Data matching method, device and equipment of electromagnetic navigation system and storage medium
By determining the data time difference between the target encoder and the target magnetic sensor in the electromagnetic navigation system, and using the characteristics of magnetic field and angle data changes to correct the data acquisition time, the positioning error caused by the difference in equipment performance in the electromagnetic navigation system is solved, and more accurate positioning is achieved.
Patent Information
- Application Number
- CN202311490847.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-08
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2043-11-08
AI Technical Summary
In electromagnetic navigation systems, due to performance differences between different devices, it is difficult to synchronously acquire the state data of the field transmitter and the measured magnetic field data of the magnetic sensor, leading to positioning errors.
By determining the data time difference between the target encoder and the target magnetic sensor, and utilizing the characteristics of magnetic field and angle data changes of the sample magnet at different angular velocities, the data acquisition trigger time is corrected to achieve data matching.
This effectively avoids mismatch between theoretical magnetic field and magnetic field data from magnetic sensors, improves the positioning accuracy of the electromagnetic navigation system, and solves the positioning error problem.
Smart Images

Figure CN119950029B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of electromagnetic navigation, and in particular to a data matching method, apparatus, device, and storage medium for an electromagnetic navigation system. Background Technology
[0002] Electromagnetic transient simulators (EMTS) are one of the mainstream technologies for surgical navigation systems. The most typical EMTS principle involves generating a time-varying magnetic field using a field transmitter, detecting this field using a magnetic sensor, and then calculating the magnetic sensor's pose. The phase method is a commonly used positioning calculation method. This method requires first calculating the theoretical magnetic field at different times based on the field transmitter's state data, and then calculating the target pose of the magnetic sensor at the corresponding time based on the theoretical magnetic field at the same time and the measured magnetic field data from the magnetic sensor. The field transmitter includes several rotatable magnets, and its state data includes the angle data of each magnet, which is provided by the corresponding absolute position encoder.
[0003] Due to performance differences between various devices, it is difficult to achieve synchronous acquisition of the state data from the field transmitter and the measured magnetic field data from the magnetic sensor. If there is a time mismatch in the acquisition times of the two corresponding data points, it will cause a mismatch between the theoretical magnetic field and the measured magnetic field data from the magnetic sensor, introducing positioning errors in the magnetic sensor. Moreover, when the magnetic sensor uses a complex sensor and wireless communication is used for data sensing, the aforementioned positioning errors will be more significant.
[0004] The performance differences between different devices cause a time misalignment between the state data of the field transmitter and the measured magnetic field data of the magnetic sensor, which ultimately introduces positioning errors in the magnetic sensor. Currently, no effective solution has been proposed. Summary of the Invention
[0005] This invention provides a data matching method, apparatus, device, and storage medium for an electromagnetic navigation system to address the problem that performance differences between different devices in related technologies lead to time misalignment between the state data of the field transmitter and the measured magnetic field data of the magnetic sensor, ultimately introducing positioning errors in the magnetic sensor.
[0006] In a first aspect, the present invention provides a data matching method for an electromagnetic navigation system, the data matching method comprising:
[0007] Identify the target encoder, target magnetic sensor, and sample magnet;
[0008] When the sample magnet rotates at different angular velocities, sample magnetic field data is obtained by the target magnetic sensor detecting the magnetic field generated by the sample magnet, and sample angle data is obtained by the target encoder detecting the angle of the sample magnet.
[0009] Determine the target variation characteristics of the sample magnetic field data with respect to the sample angle data corresponding to different angular velocities;
[0010] The data time difference between the target magnetic sensor and the target encoder is determined based on the phase difference between at least two of the target change characteristics and the velocity difference between the corresponding at least two of the angular velocities.
[0011] Based on the data time difference, data matching is performed on the target magnetic sensor and the target encoder during electromagnetic navigation.
[0012] In some of these embodiments, the different angular velocities include a first angular velocity and a second angular velocity;
[0013] At least two of the target change characteristics include a first target change characteristic corresponding to the first angular velocity and a second target change characteristic corresponding to the second angular velocity;
[0014] Determining the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two of the target change characteristics and the velocity difference between the corresponding at least two of the angular velocities includes:
[0015] The data time difference between the target magnetic sensor and the target encoder is determined based on the phase difference between the first target change characteristics and the second target change characteristics, and the velocity difference between the first angular velocity and the second angular velocity.
[0016] In some embodiments, determining the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two of the target change characteristics and the velocity difference between the corresponding at least two of the angular velocities includes:
[0017] The ratio of the phase difference between at least two of the target change characteristics to the velocity difference between the corresponding at least two angular velocities is determined as the data time difference between the target magnetic sensor and the target encoder.
[0018] In some embodiments, the step of matching data between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference includes:
[0019] Based on the data time difference, the data acquisition trigger time of the target encoder is corrected, and / or the data acquisition trigger time of the target magnetic sensor is corrected.
[0020] In some embodiments, the step of matching data between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference includes:
[0021] Based on the data time difference, determine the target phase difference corresponding to the target angular velocity;
[0022] Based on the target phase difference, the target angle data obtained by the target encoder from detecting the angle of the target magnet with the target angular velocity is corrected.
[0023] In some embodiments, the sample magnetic field data includes sample magnetic field magnitude data and sample magnetic field direction data;
[0024] The target variation characteristics include the variation characteristics of the sample magnetic field magnitude data with respect to the sample angle data.
[0025] In some embodiments, the sample magnetic field data includes three sets of sample magnetic field sub-data corresponding to three spatial dimensions respectively;
[0026] The target change characteristics include the one-dimensional change characteristics of the three sets of sample magnetic field sub-data with respect to the sample angle data;
[0027] The data time difference includes three one-dimensional time differences corresponding to the three one-dimensional change characteristics, respectively.
[0028] Secondly, the present invention provides a data matching device for an electromagnetic navigation system, characterized in that the data matching device comprises:
[0029] The matching preparation module is used to identify the target encoder, target magnetic sensor, and sample magnet;
[0030] The data acquisition module is used to acquire sample magnetic field data obtained by the target magnetic sensor detecting the magnetic field generated by the sample magnet when the sample magnet rotates at different angular velocities, and sample angle data obtained by the target encoder detecting the angle of the sample magnet.
[0031] The data processing module is used to determine the target change characteristics of the sample magnetic field data with respect to the sample angle data for different angular velocities.
[0032] The time difference determination module is used to determine the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two target change characteristics and the velocity difference between at least two corresponding angular velocities;
[0033] The data matching module is used to perform data matching between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference.
[0034] Thirdly, the present invention provides a data matching device for an electromagnetic navigation system, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the data matching method for the electromagnetic navigation system described in the first aspect above.
[0035] Fourthly, the present invention provides a storage medium having a computer program stored thereon, which, when executed by a processor, implements the data matching method of the electromagnetic navigation system described in the first aspect above.
[0036] Compared with related technologies, the data matching method, apparatus, device, and storage medium of the electromagnetic navigation system provided in this invention only require acquiring sample magnetic field data of the target magnetic sensor and sample angle data of the target encoder at at least two angular velocities of the sample magnet. Then, it establishes the target variation characteristics of the sample magnetic field data with respect to the sample angle data at at least two angular velocities. Finally, based on the phase difference between the at least two target variation characteristics and the velocity difference between the corresponding at least two angular velocities, the data time difference between the target magnetic sensor and the target encoder can be determined. During electromagnetic navigation, the data time difference can be used to match the magnetic field data of the target magnetic sensor with the angle data of the target encoder, avoiding mismatch between the theoretical magnetic field and the magnetic field data of the magnetic sensor. Therefore, it does not introduce positioning errors of the magnetic sensor, making the positioning of the magnetic sensor by the electromagnetic navigation system more accurate. It solves the problem that performance differences between different devices lead to time differences between the state data of the field transmitter and the magnetic field data of the magnetic sensor, ultimately introducing positioning errors of the magnetic sensor.
[0037] Details of one or more embodiments of this application are set forth in the following drawings and description to make other features, objects and advantages of this application more readily apparent. Attached Figure Description
[0038] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0039] Figure 1This is a hardware structure block diagram of a terminal that executes the data matching method of the electromagnetic navigation system provided by the present invention;
[0040] Figure 2 This is a flowchart of the data matching method for the electromagnetic navigation system provided by the present invention;
[0041] Figure 3 This is a comparison diagram of the change curves corresponding to two different angular velocities in one embodiment of the present invention;
[0042] Figure 4 This is a schematic diagram of synchronously triggered data acquisition involved in this invention;
[0043] Figure 5 This is a schematic diagram of asynchronously triggered data acquisition involved in this invention;
[0044] Figure 6 This is a structural block diagram of the data matching device for the electromagnetic navigation system provided by the present invention. Detailed Implementation
[0045] To better understand the purpose, technical solution, and advantages of this application, the application is described and explained below in conjunction with the accompanying drawings and embodiments.
[0046] Unless otherwise defined, the technical or scientific terms used in this application shall have the general meaning as understood by one of ordinary skill in the art to which this application pertains. Words such as “a,” “an,” “an,” “the,” “the,” and “these,” used in this application, do not indicate quantitative limitation and may be singular or plural. The terms “comprising,” “including,” “having,” and any variations thereof used in this application are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that comprises a series of steps or modules (units) is not limited to the listed steps or modules (units) but may include steps or modules (units) not listed, or may include other steps or modules (units) inherent to such processes, methods, products, or devices. The terms “connected,” “linked,” and “coupled,” used in this application, are not limited to physical or mechanical connections but may include electrical connections, whether direct or indirect. The term “multiple” used in this application refers to two or more. The "and / or" operator describes the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: A alone, A and B simultaneously, and B alone. Typically, the character " / " indicates that the objects before and after it are in an "or" relationship. The terms "first," "second," and "third," etc., used in this application are merely for distinguishing similar objects and do not represent a specific ordering of the objects.
[0047] The method embodiments provided in this example can be executed on a terminal, computer, or similar computing device. For example, it can run on a terminal. Figure 1 This is a hardware structure block diagram of a terminal that executes the data matching method of the electromagnetic navigation system provided by this invention. For example... Figure 1 As shown, a terminal may include one or more ( Figure 1 Only one is shown in the diagram. A processor 102 and a memory 104 for storing data are also included. The processor 102 may be, but is not limited to, a microprocessor (MCU) or a programmable logic device (FPGA). The terminal may also include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that… Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the terminal described above. For example, the terminal may also include components that are larger than... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown are illustrated.
[0048] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the data matching method of the electromagnetic navigation system provided in this invention. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thereby implementing the above-described method. The memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0049] The transmission device 106 is used to receive or send data via a network. This network includes a wireless network provided by the terminal's communication provider. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 can be a Radio Frequency (RF) module used for wireless communication with the Internet.
[0050] This invention provides a data matching method for an electromagnetic navigation system. Figure 2 This is a flowchart of the data matching method for the electromagnetic navigation system provided by the present invention, such as... Figure 2 As shown, the process includes the following steps:
[0051] Step S210: Determine the target encoder, target magnetic sensor, and sample magnet.
[0052] Step S220: When the sample magnet rotates at different angular velocities, acquire sample magnetic field data obtained by the target magnetic sensor detecting the magnetic field generated by the sample magnet, and sample angle data obtained by the target encoder detecting the angle of the sample magnet.
[0053] Step S230: Determine the target change characteristics of the sample magnetic field data with respect to the sample angle data for different angular velocities.
[0054] Step S240: Determine the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two target change characteristics and the velocity difference between the corresponding at least two angular velocities.
[0055] Step S250: Based on the data time difference, perform data matching between the target magnetic sensor and the target encoder in electromagnetic navigation.
[0056] Specifically, the electromagnetic navigation system mainly consists of a field transmitter and a magnetic sensor for positioning. The field transmitter includes multiple field transmitter units, each of which includes a motor, an absolute position encoder (angle position sensor), and a magnet. The motor drives the magnet to rotate, generating a time-varying magnetic field. The absolute position encoder records the angular position of the magnet, and the angle data of the magnet is output by the absolute position encoder. The magnet can be a permanent magnet, made of neodymium iron boron; it can also be an electromagnet, such as an electromagnetic coil. There may be performance differences between the absolute position encoder and the magnetic sensor, as well as between different absolute position encoders and different magnetic sensors. Therefore, for each absolute position encoder, it is necessary to determine the data time difference between it and different magnetic sensors. The data time difference is the difference between the actual acquisition time of the corresponding magnetic field data and angle data. Therefore, the first step of this method is to determine the absolute position encoder and magnetic sensor to be calibrated, i.e., the target encoder and target magnetic sensor, and to determine a rotatable magnet for calibration, i.e., the sample magnet. During the calibration process, the target encoder records and outputs the sample angle data of the sample magnet, and the target magnetic sensor detects and outputs the sample magnetic field data of the magnetic field generated by the sample magnet.
[0057] It should be noted that the above method can be directly applied to a complete electromagnetic navigation system. Specifically, it involves identifying the target magnetic sensor among multiple magnetic sensors in the electromagnetic navigation system, and the target encoder among multiple absolute position encoders. The magnet corresponding to the target encoder is the sample magnet. To prevent the time-varying magnetic field generated by the rotation of a non-sample magnet from affecting the calculation of the data time difference between the target encoder and the target magnetic sensor, the non-sample magnet can be locked to prevent rotation. Furthermore, the above method can also be applied to a standalone calibration device, which includes a rotatable magnet. In use, the target encoder and target magnetic sensor to be calibrated are fixedly installed in the calibration device. The target encoder detects the angle of the magnet in the device, and the target magnetic sensor detects the magnetic field generated by the magnet in the device. The magnet in the device is the sample magnet. This calibration device can also determine the data time difference between the target encoder and the target magnetic sensor, allowing the absolute position encoder and magnetic sensor to be calibrated to be installed sequentially for calibration and the corresponding data time difference to be recorded. Furthermore, when the calibrated absolute position encoder and magnetic sensor are applied in an electromagnetic navigation system, their data can be directly matched by the corresponding data time difference during electromagnetic navigation.
[0058] Specifically, during the calibration process, different control signals are given to the motor of the sample magnet, causing it to rotate at different angular velocities in sequence. While the sample magnet rotates at any angular velocity, the target encoder records the sample angle data, and the target magnetic sensor detects the time-varying magnetic field generated by the sample magnet to obtain sample magnetic field data. Ultimately, at least two sets of sample angle data and at least two sets of sample magnetic field data are obtained, with different sets corresponding to different angular velocities. Based on one set of sample angle data and one set of sample magnetic field data corresponding to the same angular velocity, the target variation characteristics of the sample magnetic field data with respect to the sample angle data can be determined.
[0059] In actual execution, the sample magnet typically needs to rotate continuously at the same angular velocity for a certain period of time. Therefore, each set of sample angle data and sample magnetic field data consists of a data sequence, namely a sample angle value sequence and a sample magnetic field value sequence. For the sample angle value sequence and sample magnetic field value sequence corresponding to the same angular velocity, a one-to-one correspondence can be established between the angle values in the sample angle value sequence and the magnetic field values in the sample magnetic field value sequence based on the data timestamps. This establishes a curve representing the change in magnetic field value with respect to the angle value, which characterizes the target change characteristics of the sample magnetic field data with respect to the sample angle data. Calculating the phase difference between at least two target change characteristics can, in actual execution, involve calculating the phase difference between at least two corresponding change curves. Figure 3 This is a comparison graph of the change curves corresponding to two different angular velocities in one embodiment of the present invention. For example... Figure 3 As shown, Figure 3 The two variation curves are constructed based on the sample angle value sequence and sample magnetic field value sequence under different angular velocities, respectively. The horizontal axis represents the angle value and the vertical axis represents the magnetic field value. The phase difference between the two variation curves is the phase difference between the corresponding two target variation characteristics.
[0060] After determining the phase difference between at least two target change characteristics and the velocity difference between at least two corresponding angular velocities, the data time difference between the target encoder and the target magnetic sensor can be determined based on the ratio of the phase difference to the velocity difference. This data time difference allows for the matching of the magnetic field data of the target magnetic sensor with the angle data of the target encoder. The calculation principle of the data time difference is as follows: when there is no data time difference between the target encoder and the target magnetic sensor, the sample magnetic field data and the sample angle data are perfectly matched, meaning that the actual acquisition times of the corresponding sample magnetic field data and sample angle data are the same. When there is a difference in performance between the target encoder and the target magnetic sensor, the sample magnetic field data and sample angle data are mismatched, meaning that there is a time mismatch in their actual acquisition times. This requires matching the time-mismatched sample magnetic field data and sample angle data. Since the faster the angular velocity of the magnet, the greater the angle it rotates within the time difference, the greater the angular mismatch between the sample magnetic field data and the sample angle data. The angular mismatch is the difference between the matched angle value of a certain magnetic field value and the actual angle value at the same physical moment corresponding to that magnetic field value. The ratio between the difference in misalignment at different angles and the difference in the corresponding angular velocities is the data time difference between the target encoder and the target magnetic sensor.
[0061] Taking the single-axis rotation of a magnet as an example, the relationship between angle data and magnetic field data can be represented as follows:
[0062] B mnc (t)=B mn0 (θ m (t))+B environ =B mn0 (θ mc (t)+Δt mn ω m )+B environ
[0063] Wherein, the subscript m represents the m-th magnet, and the subscript n represents the n-th magnetic sensor; B mnc B represents the measured magnetic field value obtained by detecting the time-varying magnetic field generated by the nth magnetic sensor when the mth magnet rotates. mn0 B is the theoretical magnetic field value of the time-varying magnetic field generated when the m-th magnet rotates. environ This represents the environmental magnetic field value (including the geomagnetic field and the static magnetic field of other magnets). Among them, B...mnc By B mn0 and B environ Composition, B mn0 Determined by the angle value θ of the magnet, θ m θ represents the actual magnet angle (at the same physical moment) corresponding to the measured magnetic field value. mc This represents the measured magnet angle. In the above physical quantities, the ambient magnetic field value is assumed to be a fixed value, while both the measured magnetic field value and the magnet angle value change with time t. When the magnet's angular velocity is close to zero, the actual magnet angle corresponding to the measured magnetic field value is almost the same as the measured magnet angle (determined based on the angle value). As the magnet's angular velocity increases, a difference Δθ appears between the measured magnet angle and the actual magnet angle corresponding to the measured magnetic field value. m =Δt mn ω m This difference is the angular misalignment in the data matching process described above. Wherein, Δt mn ω represents the data time difference between the encoder of the m-th magnet and the magnetic sensor of the n-th magnet. m Let represent the angular velocity of the m-th magnet. From the expression for the angular misalignment, it can be seen that the angular misalignment is related to the angular velocity of the magnet, and the formula for calculating the data time difference can be derived as follows:
[0064] Δt mn =Δθ ω / (ω2-ω1)
[0065] Where ω1 and ω2 represent two different angular velocities, αθ ω This represents the difference between the angular misalignment amounts corresponding to ω1 and ω2, respectively, which is the phase difference between the target change characteristics corresponding to ω1 and ω2.
[0066] Therefore, in one embodiment, step S240, determining the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two target change characteristics and the velocity difference between the corresponding at least two angular velocities, includes: determining the ratio of the phase difference between at least two target change characteristics to the velocity difference between the corresponding at least two angular velocities as the data time difference between the target magnetic sensor and the target encoder. In this embodiment, the ratio of the phase difference to the velocity difference is directly used as the data time difference. As can be seen from the principle, theoretically, this method can accurately determine the data time difference. Correspondingly, in the actual processing calculation, the ratio of the phase difference to the velocity difference can also be transformed and used as the data time difference, for example, by adding a small bias term to the ratio, or multiplying it by a transformation coefficient close to 1.
[0067] As explained above, the data matching method in this invention only requires acquiring the sample magnetic field data of the target magnetic sensor and the sample angle data of the target encoder at at least two angular velocities. Then, it establishes the target change characteristics of the sample magnetic field data with respect to the sample angle data at at least two angular velocities. Finally, based on the phase difference between the at least two target change characteristics and the velocity difference between the corresponding at least two angular velocities, the data time difference between the target magnetic sensor and the target encoder can be determined. Therefore, during electromagnetic navigation, the data time difference can be used to match the magnetic field data of the target magnetic sensor with the angle data of the target encoder, avoiding mismatches between the theoretical magnetic field and the magnetic field data of the magnetic sensor. This prevents the introduction of positioning errors by the magnetic sensor, making the electromagnetic navigation system more accurate in positioning the magnetic sensor. This solves the problem of time differences between the state data of the field transmitter and the magnetic field data of the magnetic sensor caused by performance differences between different devices, which ultimately introduces positioning errors by the magnetic sensor.
[0068] Meanwhile, since it is only necessary to acquire the sample magnetic field data of the target magnetic sensor and the sample angle data of the target encoder at at least two angular velocities of the sample magnet, in some embodiments, different angular velocities include a first angular velocity and a second angular velocity; at least two target change characteristics include a first target change characteristic corresponding to the first angular velocity and a second target change characteristic corresponding to the second angular velocity; step S240, determining the data time difference between the target magnetic sensor and the target encoder based on the phase difference between the at least two target change characteristics and the velocity difference between the corresponding at least two angular velocities, includes: determining the data time difference between the target magnetic sensor and the target encoder based on the phase difference between the first target change characteristic and the second target change characteristic, and the velocity difference between the first angular velocity and the second angular velocity.
[0069] In this embodiment, for ease of calculation, only the sample magnetic field data of the target magnetic sensor and the sample angle data of the target encoder at two angular velocities are acquired to solve for the data time difference. Correspondingly, in other embodiments, the sample magnet can be rotated at more angular velocities. For example, the angular velocity may also include a third angular velocity. In this case, the first data time difference can be calculated based on the relevant data corresponding to the first and second angular velocities, and the second data time difference can be calculated based on the relevant data corresponding to the second and third angular velocities. Simultaneously, the third data time difference can be calculated based on the relevant data corresponding to the first and third angular velocities. Theoretically, the first, second, and third data time differences all reflect the data time difference between the target encoder and the target magnetic sensor, and all three are the same. In actual calculation, due to measurement and calculation errors, there may be small differences between the three. In this case, the average of the three can be used as the final data time difference, thereby more accurately determining the data time difference between the target encoder and the target magnetic sensor.
[0070] Once the data time difference is determined, various data matching schemes can be implemented using the data time difference.
[0071] In some embodiments, step S250, which involves matching data between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference, includes: correcting the data acquisition trigger time of the target encoder and / or correcting the data acquisition trigger time of the target magnetic sensor based on the data time difference.
[0072] In this embodiment, asynchronous triggering is actually used in the electromagnetic navigation process, which is the opposite of synchronous triggering. Figure 4 This is a schematic diagram of synchronously triggered data acquisition involved in this invention. Figure 5 This is a schematic diagram of asynchronously triggered data acquisition involved in this invention. Synchronous triggering refers to the data processing center simultaneously sending data acquisition commands to different devices (such as magnetic sensors and absolute position encoders), hoping that the different devices can acquire data synchronously. However, when different devices receive data acquisition commands simultaneously, performance differences will lead to different response times. (Refer to...) Figure 4 Assuming that the target magnetic sensor receives the instruction and performs data acquisition after a time interval of lag1, and the target encoder receives the instruction and performs data acquisition after a time interval of lag2, then there is a time difference Δt = lag2 - lag1 between the actual acquisition times of the two data points that should be acquired synchronously. This time difference is the data time difference. In this embodiment, an asynchronous triggering mode is used when the data time difference is determined. (Refer to...) Figure 5 The data processing center sends data acquisition commands to the target magnetic sensor and target encoder at different times, thereby adjusting the data acquisition trigger time of the target encoder or target magnetic sensor based on synchronous triggering. The data acquisition trigger time of the target encoder can be advanced, or the data acquisition trigger time of the target magnetic sensor can be delayed; the adjustment amount is the data time difference, ultimately making the actual acquisition times of the corresponding sample magnetic field data and sample angle data the same or close, causing Δt to approach 0. The adjustment method described above mainly uses one device as a reference to adjust the data acquisition trigger time of the other device. Correspondingly, the data acquisition trigger times of both devices can also be adjusted simultaneously, making their actual data acquisition times the same or close. For example, when the data time difference between the target magnetic sensor and the target encoder is 0.2s, assuming the response time of the target magnetic sensor is longer, the data acquisition trigger time of the target magnetic sensor can be advanced by 0.1s, and the data acquisition trigger time of the target encoder can be delayed by 0.1s, based on synchronous triggering.
[0073] It should be noted that in actual electromagnetic navigation systems, there are multiple absolute position encoders and multiple magnetic sensors. In this case, one of the absolute position encoders or magnetic sensors can be used as a reference to correct the data acquisition trigger times of the other absolute position encoders and magnetic sensors. For example, one absolute position encoder can be used as a reference to first correct the data acquisition trigger times of each magnetic sensor. Then, one of the corrected magnetic sensors can be used as an intermediate reference to correct the data acquisition trigger times of the other absolute encoders, ultimately making the data acquisition times of all absolute position encoders and magnetic sensors as synchronized as possible. For example, there are magnetic sensors a and b with response times of 0.1s and 0.2s respectively, and absolute position encoders c and d with response times of 0.3s and 0.4s respectively. Based on synchronized triggering, the data time difference between magnetic sensor a and absolute position encoder c can be calculated to be 0.2s, between magnetic sensor a and absolute position encoder d to be 0.3s, between magnetic sensor b and absolute position encoder c to be 0.1s, and between magnetic sensor b and absolute position encoder d to be 0.2s. At this point, we can first use the data acquisition trigger time of magnetic sensor a as a reference, and advance the data acquisition trigger times of absolute position encoders c and d by 0.2s and 0.3s respectively; then, using the adjusted data acquisition trigger time of absolute position encoder c as a reference, advance the data acquisition trigger time of magnetic sensor b by 0.1s. Specifically, if we use the data acquisition trigger time of absolute position encoder c before adjustment as a reference, based on the data time difference, the data acquisition trigger time of magnetic sensor b should be delayed by 0.1s. Since the data acquisition trigger time of absolute position encoder c is advanced by 0.2s, the final result is that the data acquisition trigger time of magnetic sensor b is advanced by 0.1s. The final adjustment result is: the data acquisition trigger time of magnetic sensor a remains unchanged, the data acquisition trigger time of magnetic sensor b is advanced by 0.1s, the data acquisition trigger time of absolute position encoder c is advanced by 0.2s, and the data acquisition trigger time of absolute position encoder d is advanced by 0.3s. Combining their respective response times, the actual data acquisition time of all four is ultimately the same, which is 0.1s after the acquisition trigger of magnetic sensor a.
[0074] In other embodiments, step S250 involves matching data between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference. This includes: determining the target phase difference corresponding to the target angular velocity based on the data time difference; and correcting the target angle data obtained by the target encoder from detecting the angle of the target magnet with the target angular velocity based on the target phase difference. As described above, in the matching process of magnetic field data and angle data, the matching misalignment can be represented by either the time difference or the angle misalignment. Therefore, in this embodiment, the target phase difference refers to the angular misalignment between the magnetic field data and the angle data when the magnet rotates at the target angular velocity. After the data time difference is determined, the angular misalignment corresponding to each different angular velocity can be determined. For example, the product of the data time difference and the target angular velocity is the target phase difference. During electromagnetic navigation, when the target magnet rotates at the target angular velocity, the target angle data can be corrected using the target phase difference. This means adjusting each angle value in the data sequence, and adding the target phase difference to the original angle value yields the corrected angle value.
[0075] In some embodiments, the sample magnetic field data includes sample magnetic field magnitude data and sample magnetic field direction data; the target variation characteristics include the magnitude variation characteristics of the sample magnetic field magnitude data with respect to the sample angle data.
[0076] Specifically, since the magnetic field is a vector, the sample magnetic field data detected by the target magnetic sensor is vector data, including the sample magnetic field magnitude data and the sample magnetic field direction data. To reduce the computational complexity of phase difference calculations between different target variation characteristics, the magnetic field direction can be disregarded, and only the magnitude variation characteristics of the sample magnetic field magnitude data with respect to the sample angle data can be established, which still achieves the effect of calculating phase difference.
[0077] In some embodiments, the sample magnetic field data includes three sets of sample magnetic field sub-data corresponding to the three spatial dimensions respectively; the target change characteristics include the one-dimensional change characteristics of the three sets of sample magnetic field sub-data with respect to the sample angle data respectively; and the data time difference includes three one-dimensional time differences corresponding to the three one-dimensional change characteristics respectively.
[0078] Specifically, since the magnetic field is a vector, the magnetic field data includes magnetic field sub-data in three spatial dimensions. In this embodiment, the magnetic field data can be represented as:
[0079]
[0080] Where L represents the length of the magnetic field data sequence, the specific value of which depends on the acquisition time and acquisition rate. B x (t), B y (t) and B z(t) represents three sets of magnetic field sub-data points corresponding to three spatial dimensions. In some magnetic sensors, the three sets of magnetic field sub-data points within the same magnetic field data are acquired simultaneously. Therefore, the sample magnetic field data can be treated as a whole, and the data time difference between it and the corresponding sample angle data can be calculated. Conversely, in other magnetic sensors, the three sets of magnetic field sub-data points within the same magnetic field data are acquired sequentially. Due to the different acquisition times, it is necessary to calculate the one-dimensional time difference between each of the three sets of sample magnetic field sub-data points and the corresponding sample angle data. Specifically, it is necessary to establish the one-dimensional variation characteristics of the three sets of sample magnetic field sub-data points with respect to the sample angle data at different angular velocities, and then determine their respective one-dimensional time differences using the ratio of their phase difference to velocity difference. Therefore, in electromagnetic navigation, magnetic field sub-data points in different spatial dimensions need to be matched with angle data using their respective one-dimensional time differences.
[0081] The technical solution of the present invention will be specifically described below through a specific embodiment.
[0082] In a specific embodiment where a permanent magnet is used as the magnet, the data matching method of the electromagnetic navigation system includes the following steps:
[0083] 1. Calibrate the data time difference between the m-th absolute position encoder (target encoder) and the n-th magnetic sensor (target magnetic sensor), fix all other permanent magnets, allow only the m-th permanent magnet to rotate, and fix the position of the n-th magnetic sensor unchanged.
[0084] Specifically, the field emitter and the magnetic sensor (multi-channel magnetic sensors can be calibrated simultaneously) can be fixed on a plastic or wooden platform, and then the remaining permanent magnets can be locked in place by a structure to ensure that they do not move or rotate.
[0085] 2. Drive the m-th permanent magnet to rotate at a low speed ω1 (e.g., 2Hz), and simultaneously record the magnetic field value sequence B. 1s (t)(sample magnetic field data) and angle value sequence θ ls (t)(sample angle data).
[0086] 3. Drive the m-th permanent magnet to rotate at a high speed of ω2 (e.g., 20Hz), and simultaneously record the magnetic field value sequence B. hs (t)(sample magnetic field data) and angle value sequence θ hs (t)(sample angle data).
[0087] Specifically, in the two steps above, the permanent magnet is driven to rotate at different speeds for a period of time, and the corresponding magnetic field value sequences and angle value sequences are recorded. Note: The two speeds should be kept slightly different; one should be a low speed and the other a high speed.
[0088] 4. Calculate the phase difference of the B-θ curve (the curve representing the change of magnetic field value with respect to the angle value, characterizing the target change characteristics of the sample magnetic field data with respect to the sample angle data) in the two cases mentioned above, and thus determine the data time difference Δt. mn .
[0089] Specifically, there are many methods for solving the phase difference of curves. This embodiment only introduces one scheme, namely, the fitting and optimization method. It is understood that, given two curves, other methods in the prior art can also be used to calculate their phase difference.
[0090] First, select the object to be processed. Since the magnetic field is a vector, the magnetic field value sequence obtained from the above records is actually three columns of data, namely: Where L is the length of the magnetic field value sequence, the specific value of which is determined by the acquisition time and acquisition rate. Different magnetic sensors have different internal processing methods. For some sensors, the magnetic field values B in the three spatial directions... x (t), B y (t) and B z Some data (t) are acquired simultaneously, while others are acquired sequentially. For the former, the magnetic sensor has only one acquisition time, which can be represented by the magnitude sequence of the sample magnetic field data ||B(t)||, and the ||B||~θ curve can be processed. For the latter, the data of a single axis corresponds to a separate B~θ curve, and then each curve is calibrated individually. This embodiment uses the former as an example, that is, selecting the ||B||~θ curve (hereinafter, B~θ represents ||B||~θ).
[0091] Secondly, calculate the mean of the corresponding magnetic field values based on the angle value θ. Since the acquisition time in steps 2 and 3 often exceeds one rotation cycle, the magnetic field values can be categorized according to the angle value θ. Multiple magnetic field values corresponding to the same angle value can be grouped together as a data set, and then the mean of the same group of magnetic field values can be calculated, thereby reducing random errors.
[0092]
[0093] Where, B(θ(t)=θ i ) represents the angle value θ i The set of all corresponding magnetic field values, with the mean of this set, yields the angle value θ. i The corresponding average magnetic field value Using the above formula, the average magnetic field value corresponding to any angle can be obtained. Then, the analytical expression of the B-θ curve is fitted. After the above processing, two pairs of sequences can be obtained: and The subscripts ls and hs represent relatively low speed and relatively high speed, respectively. Typically, the sequence lengths of the two pairs of sequences are different because θ ls With θhs The values of are different. A polynomial fit can be performed on them to obtain an analytical expression (for example, s can take values from 6 to 8):
[0094]
[0095]
[0096] Where s represents the order of the polynomial fitting (for example, s can be 6-8), and p and q represent the coefficients of the polynomial. The two analytical expressions above are the analytical expressions for the two B-θ curves, respectively.
[0097] Next, the phase difference is calculated. Once the analytical expression is obtained, the phase difference can be calculated:
[0098]
[0099] Using the above model, the phase difference Δθ between the two B-θ curves can be calculated. ω .
[0100] Finally, the time difference is calculated. This is mainly based on the phase difference Δθ between the two B-θ curves. ω The ratio of the difference between the two corresponding angular velocities is used to determine the data time difference Δt. mn The calculation formula is as follows:
[0101] Δt mn =Δθ ω / (ω2-ω1)
[0102] 5. Based on the data time difference Δt mn Calculate the specified rotational speed ω m Phase difference Δθ m =Δt mn ω m And save it, and uniformly correct the angle data of the corresponding absolute position encoder during positioning. Alternatively, based on the data time difference Δt mn Adjusting the acquisition trigger time of the magnetic sensor or absolute position encoder enables asynchronous triggering.
[0103] Specifically, the data time difference Δt is calibrated. mn There are two ways to improve positioning performance.
[0104] On one hand, the phase difference is calculated, and then the angle value is corrected. Based on the data time difference, the specified rotational speed ω is calculated. m Phase difference (angle correction value) Δθ at the rotational speed during positioning m =Δt mn ω mThis information is stored in the system (such as in the sensor's chip). During actual positioning, the values from the corresponding angle sensors are uniformly corrected: θ′ m =θ m +Δθ m Then, phase-based positioning is employed. In this method, the hardware preserves the differences in data acquisition times between sensors, requiring only software processing. It is relatively simple to operate. It is primarily suitable for situations where the angular velocity of the permanent magnet is constant. For situations where the angular velocity of the permanent magnet changes in real time, the angular velocity can be monitored in real time, the phase difference updated in real time, and the angle value corrected differentially at each moment.
[0105] On the other hand, an asynchronous triggering mode is adopted. As mentioned earlier, synchronous triggering mode sends data acquisition commands to multiple sensors simultaneously, and the difference in sensor response speed causes a difference in the actual data acquisition time. Once the difference in data acquisition time is calibrated, hardware adjustments can be made to align the actual data acquisition times of each sensor, i.e., asynchronous triggering. By triggering the slower-responding sensors first and then the faster-responding sensors, the difference in their actual acquisition time can be reduced to near zero.
[0106] 6. Change the calibration object and repeat steps 1 to 5 above.
[0107] It should be noted that the above embodiments mainly target permanent magnets rotating along a single axis, whose time-varying magnetic field has a constant direction. Therefore, in the calculation process, only the magnitude of the sample magnetic field data can be used, i.e., a curve showing the change of the sample magnetic field magnitude with respect to the angle value of the permanent magnet can be established. Correspondingly, for permanent magnets rotating along multiple axes, since the direction of the time-varying magnetic field changes continuously, the magnetic field direction needs to be considered in the calculation process. Therefore, the vector value of the sample magnetic field data needs to be used for calculation. The calculation principle and formula are the same as described above.
[0108] This invention also provides a data matching device for an electromagnetic navigation system, which is used to implement the above embodiments and preferred embodiments; details already described will not be repeated. The terms "module," "unit," "subunit," etc., used below refer to combinations of software and / or hardware that implement a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.
[0109] Figure 6 This is a structural block diagram of the data matching device for the electromagnetic navigation system provided by the present invention, as shown in the figure. Figure 6 As shown, the device includes:
[0110] Matching preparation module 610 is used to determine the target encoder, target magnetic sensor and sample magnet;
[0111] The data acquisition module 620 is used to acquire sample magnetic field data obtained by the target magnetic sensor detecting the magnetic field generated by the sample magnet when the sample magnet rotates at different angular velocities, and sample angle data obtained by the target encoder detecting the angle of the sample magnet.
[0112] Data processing module 630 is used to determine the target change characteristics of sample magnetic field data corresponding to different angular velocities with respect to sample angle data;
[0113] The time difference determination module 640 is used to determine the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two target change characteristics and the velocity difference between at least two corresponding angular velocities;
[0114] The data matching module 650 is used to match the data of the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference.
[0115] The data matching device in this invention only needs to acquire the sample magnetic field data of the target magnetic sensor and the sample angle data of the target magnet at at least two angular velocities. Then, it establishes the target change characteristics of the sample magnetic field data with respect to the sample angle data at at least two angular velocities. Finally, based on the phase difference between the at least two target change characteristics and the velocity difference between the corresponding at least two angular velocities, the data time difference can be determined. Furthermore, during electromagnetic navigation, the data time difference can be used to match the magnetic field data of the target magnetic sensor with the angle data of the target encoder, avoiding mismatches between the theoretical magnetic field and the sample magnetic field data of the magnetic sensor. Therefore, it does not introduce positioning errors in the magnetic sensor, making the positioning of the magnetic sensor by the electromagnetic navigation system more accurate. Performance differences between different devices lead to a time difference between the state data of the field transmitter and the sample magnetic field data of the magnetic sensor, ultimately introducing positioning errors in the magnetic sensor.
[0116] It should be noted that the above modules can be functional modules or program modules, and can be implemented through software or hardware. For modules implemented through hardware, the above modules can reside in the same processor; or the above modules can be located in different processors in any combination.
[0117] The present invention also provides a data matching device for an electromagnetic navigation system, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0118] Optionally, the data matching device of the electromagnetic navigation system may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.
[0119] It should be noted that the specific examples in this embodiment can refer to the examples described in the above embodiments and optional implementations, and will not be repeated in this embodiment.
[0120] Furthermore, in conjunction with the data matching method for the electromagnetic navigation system provided by the present invention, a storage medium can also be provided for implementation. This storage medium stores a computer program; when executed by a processor, the computer program implements any of the data matching methods for the electromagnetic navigation system described in the above embodiments.
[0121] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties.
[0122] It should be understood that the specific embodiments described herein are merely illustrative of the application and not intended to limit it. All other embodiments derived by those skilled in the art based on the embodiments provided in this application without inventive effort are within the scope of protection of this application.
[0123] Obviously, the accompanying drawings are merely some examples or embodiments of this application. Those skilled in the art can apply this application to other similar situations based on these drawings without any creative effort. Furthermore, it is understood that although the work done in this development process may be complex and lengthy, for those skilled in the art, certain design, manufacturing, or production modifications made based on the technical content disclosed in this application are merely conventional technical means and should not be considered as insufficient disclosure of this application.
[0124] The term "embodiment" in this application refers to a specific feature, structure, or characteristic described in connection with an embodiment that may be included in at least one embodiment of this application. The appearance of this phrase in various places in the specification does not necessarily imply the same embodiment, nor does it imply that it is mutually exclusive with or independent of other embodiments. It will be clearly or implicitly understood by those skilled in the art that the embodiments described in this application may be combined with other embodiments without conflict.
[0125] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of patent protection. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the appended claims.
Claims
1. A data matching method for an electromagnetic navigation system, characterized in that, The data matching method includes: Identify the target encoder, target magnetic sensor, and sample magnet; When the sample magnet rotates at different angular velocities, sample magnetic field data is obtained by the target magnetic sensor detecting the magnetic field generated by the sample magnet, and sample angle data is obtained by the target encoder detecting the angle of the sample magnet. Determine the target variation characteristics of the sample magnetic field data with respect to the sample angle data corresponding to different angular velocities; The data time difference between the target magnetic sensor and the target encoder is determined based on the phase difference between at least two of the target change characteristics and the velocity difference between the corresponding at least two of the angular velocities. Based on the data time difference, data matching is performed on the target magnetic sensor and the target encoder during electromagnetic navigation.
2. The data matching method for an electromagnetic navigation system according to claim 1, characterized in that, The different angular velocities mentioned include a first angular velocity and a second angular velocity; At least two of the target change characteristics include a first target change characteristic corresponding to the first angular velocity and a second target change characteristic corresponding to the second angular velocity; Determining the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two of the target change characteristics and the velocity difference between the corresponding at least two of the angular velocities includes: The data time difference between the target magnetic sensor and the target encoder is determined based on the phase difference between the first target change characteristics and the second target change characteristics, and the velocity difference between the first angular velocity and the second angular velocity.
3. The data matching method for an electromagnetic navigation system according to claim 1, characterized in that, Determining the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two of the target change characteristics and the velocity difference between the corresponding at least two of the angular velocities includes: The ratio of the phase difference between at least two of the target change characteristics to the velocity difference between the corresponding at least two angular velocities is determined as the data time difference between the target magnetic sensor and the target encoder.
4. The data matching method for an electromagnetic navigation system according to claim 1, characterized in that, The step of matching data between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference includes: Based on the data time difference, the data acquisition trigger time of the target encoder is corrected, and / or the data acquisition trigger time of the target magnetic sensor is corrected.
5. The data matching method for an electromagnetic navigation system according to claim 1, characterized in that, The step of matching data between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference includes: Based on the data time difference, determine the target phase difference corresponding to the target angular velocity; Based on the target phase difference, the target angle data obtained by the target encoder from detecting the angle of the target magnet with the target angular velocity is corrected.
6. The data matching method for an electromagnetic navigation system according to claim 1, characterized in that, The sample magnetic field data includes sample magnetic field magnitude data and sample magnetic field direction data; The target variation characteristics include the variation characteristics of the sample magnetic field magnitude data with respect to the sample angle data.
7. The data matching method for an electromagnetic navigation system according to claim 1, characterized in that, The sample magnetic field data includes three sets of sample magnetic field sub-data corresponding to three spatial dimensions respectively; The target change characteristics include the one-dimensional change characteristics of the three sets of sample magnetic field sub-data with respect to the sample angle data; The data time difference includes three one-dimensional time differences corresponding to the three one-dimensional change characteristics, respectively.
8. A data matching device for an electromagnetic navigation system, characterized in that, The data matching device includes: The matching preparation module is used to identify the target encoder, target magnetic sensor, and sample magnet; The data acquisition module is used to acquire sample magnetic field data obtained by the target magnetic sensor detecting the magnetic field generated by the sample magnet when the sample magnet rotates at different angular velocities, and sample angle data obtained by the target encoder detecting the angle of the sample magnet. The data processing module is used to determine the target change characteristics of the sample magnetic field data with respect to the sample angle data for different angular velocities. The time difference determination module is used to determine the data time difference between the target magnetic sensor and the target encoder based on the phase difference between at least two target change characteristics and the velocity difference between at least two corresponding angular velocities; The data matching module is used to perform data matching between the target magnetic sensor and the target encoder in electromagnetic navigation based on the data time difference.
9. A data matching device for an electromagnetic navigation system, comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to run the computer program to perform the data matching method of the electromagnetic navigation system according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the steps of the data matching method of the electromagnetic navigation system according to any one of claims 1 to 7.
Citation Information
Patent Citations
Electromagnetic navigation system, data synchronization method and device thereof and electronic equipment
CN119523632A