Methods, systems, equipment and media for conductor position identification in electromagnetic cruise systems
By employing array rotation storage and signal splicing techniques in the electromagnetic cruise system, combined with Fourier transform and Kalman filtering, the problem of low conductor position recognition accuracy under electromagnetic interference was solved, achieving higher conductor position recognition accuracy and system stability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- 广东兴颂科技有限公司
- Filing Date
- 2025-09-24
- Publication Date
- 2026-05-26
AI Technical Summary
Existing electromagnetic cruise systems use a single storage space, which leads to data fragmentation due to signal data overlay. This makes it difficult to accurately identify the position of conductors in industrial environments, especially in the presence of electromagnetic interference, resulting in low identification accuracy.
The original electromagnetic signal is stored alternately using the first and second arrays. When switching arrays, the last and first segments of adjacent arrays are extracted and spliced together. Combined with Fourier transform and Kalman filtering, the continuity of signal data and anti-interference ability are ensured.
By ensuring the continuity of signal data and effectively filtering out interference, the accuracy of conductor position identification in the electromagnetic cruise system is improved, thereby enhancing the accuracy of conductor position identification and its anti-interference capability.
Smart Images

Figure CN121274889B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, specifically to a method, system, device, and medium for identifying the position of a conductor in an electromagnetic cruise system. Background Technology
[0002] With the rapid development of industrial automation, electromagnetic navigation systems are widely used in AGV (Automated Guided Vehicle) vehicles, warehousing and logistics, and other scenarios. This system achieves precise navigation and positioning of AGV vehicles by collecting and analyzing electromagnetic signals generated by wires, and features low cost and ease of maintenance.
[0003] Currently, existing electromagnetic cruise systems often use a single storage space for data acquisition, converting the acquired analog signals into digital signals and storing them in memory. To accurately identify the conductor's position, the system needs to transform the stored digital signals. During this transformation, the processed signal data must be continuous, which directly affects the accuracy of conductor position identification.
[0004] However, in practical applications, due to the use of a single storage space for cyclic storage, newly acquired signal data directly overwrites already stored data. This data overwriting causes breaks in the signal data used for transformation, preventing the system from obtaining complete and continuous signal characteristics. In industrial environments, the presence of various electromagnetic interference sources further exacerbates this problem, making it difficult for the system to accurately analyze signal characteristics during transformation processing, thereby reducing the accuracy of conductor position identification. Summary of the Invention
[0005] This application provides a method, system, device, and medium for identifying the position of conductors in an electromagnetic cruise system, which can improve the accuracy of conductor position identification in the electromagnetic cruise system.
[0006] In a first aspect, this application provides a method for identifying the position of a conductor in an electromagnetic cruise system, comprising:
[0007] Acquire the original electromagnetic signal of the target coil in the electromagnetic cruise system, and set up a first array and a second array for alternating storage of the original electromagnetic signal;
[0008] A preset number of raw electromagnetic signals are stored in the first array;
[0009] After the data storage in the first array is completed, the storage address is switched to the second array for data storage, and the data of the preset end segment in the first array is extracted and concatenated with the data of the preset start segment in the second array to obtain the first concatenated data;
[0010] After the data storage to the second array is completed, the storage address is switched back to the first array for data storage, and the data of the preset end segment in the second array is extracted and concatenated with the data of the preset start segment in the first array to obtain the second concatenated data;
[0011] Fourier transform and Kalman filtering are performed on the first spliced data and the second spliced data to obtain the first filtering result and the second filtering result;
[0012] The position of the conductor in the electromagnetic cruise system is determined based on the first filtering result and the second filtering result.
[0013] By employing the above technical solution, the original electromagnetic signals are stored alternately using a first array and a second array. During array switching, the last and first segments of adjacent arrays are extracted and concatenated, thus avoiding data fragmentation caused by data overwriting in a single storage space and ensuring the continuity of data used for signal processing. Simultaneously, Fourier transform and Kalman filtering are applied to the concatenated data to effectively filter out electromagnetic interference in the industrial environment and extract more accurate signal features. Analysis of the first and second filtering results allows for more precise determination of the conductor's position, thereby improving the conductor position identification accuracy of the electromagnetic cruise system.
[0014] Optionally, the excitation frequency and sampling frequency of the electromagnetic cruise system are obtained, and the target data length is determined according to the ratio of the excitation frequency and the sampling frequency; a preset ratio of the target data length is determined as the first data length of the preset end segment, and data of the first data length is extracted from the end of the first array as the data of the preset end segment; the first data length is subtracted from the target data length to obtain the second data length of the preset start segment, and data of the second data length is extracted from the beginning of the second array as the data of the preset start segment; the data of the preset end segment and the data of the preset start segment are arranged sequentially according to the time sequence to generate the first spliced data.
[0015] Optionally, the ratio of the sampling frequency to the excitation frequency of the conductor is calculated to obtain the number of sampling points per cycle; the product of the number of sampling points per cycle and the preset number of cycles is used as the first reference length; the noise frequency in the original electromagnetic signal is detected, the minimum data processing length is determined according to the noise frequency, and the minimum data processing length is used as the second reference length; the minimum length value that is greater than the first reference length and the second reference length is determined as the target data length.
[0016] Optionally, peak detection is performed on the first filtering result and the second filtering result respectively to obtain a first peak point set and a second peak point set; abnormal peak points are removed according to the amplitude difference and spacing between adjacent peak points in the first peak point set to obtain a first candidate position set, and abnormal peak points are removed according to the amplitude difference and spacing between adjacent peak points in the second peak point set to obtain a second candidate position set; position points in the first candidate position set are paired with position points in the second candidate position set, and valid position point pairs are selected according to a spatial distance threshold; the peak amplitude of the valid position point pairs is normalized, the amplitude ratio of each pair of position points is calculated, and matched with a preset calibration curve; the valid position point pairs are weighted according to the matching results, and the center position of the position point pair with the largest weight value is selected as the conductor position.
[0017] Optionally, a spatial distance threshold is determined based on the installation spacing of the two sensors in the electromagnetic cruise system; a sliding window method is used to traverse the first candidate position set, and for each position point within the window, a pair of position points with a spacing less than the spatial distance threshold is searched in the second candidate position set; if the number of searched position point pairs is a single pair, the searched position point pair is taken as a valid position point pair; if the number of searched position point pairs is multiple, the phase difference between each position point pair is calculated, and the position point pair with the smallest difference between the phase difference and the preset phase difference is taken as a valid position point pair.
[0018] Optionally, the peak amplitude of the position points from the first candidate position set in each valid position point pair is obtained, and the obtained peak amplitude is divided by the maximum value among the peak amplitudes to obtain a first normalized amplitude sequence; the peak amplitude of the position points from the second candidate position set in each valid position point pair is obtained, and the obtained peak amplitude is divided by the maximum value among the peak amplitudes to obtain a second normalized amplitude sequence; based on the second normalized amplitude sequence and the first normalized amplitude sequence, an amplitude ratio sequence is determined, and the calibration curve is sampled at equal intervals according to the length of the amplitude ratio sequence to generate a discrete calibration point set; based on the deviation between the amplitude ratio sequence and each calibration point in the discrete calibration point set, a deviation curve is generated, and the calibration point corresponding to the minimum value point in the deviation curve is used as the matching result.
[0019] Optionally, a threshold detection window is set, and the original electromagnetic signal is traversed based on the threshold detection window to detect the initial amplitude of the original electromagnetic signal; when the initial amplitude of the original electromagnetic signal is detected to exceed a preset threshold, the starting position of the threshold detection window is marked as the effective signal starting point; the storage starting address of the first array is determined according to the effective signal starting point, and the preset number of original electromagnetic signals are stored sequentially into the first array starting from the effective signal starting point.
[0020] A second aspect of this application provides a conductor position identification system for an electromagnetic cruise system, the system comprising:
[0021] The signal acquisition module is used to acquire the original electromagnetic signal of the target coil in the electromagnetic cruise system, and to set up a first array and a second array for alternating storage of the original electromagnetic signal;
[0022] The data splicing module is used to store a preset number of raw electromagnetic signals into the first array; after the data storage to the first array is completed, the storage address is switched to the second array for data storage, and the data of the preset end segment in the first array is extracted and spliced with the data of the preset start segment in the second array to obtain the first spliced data; after the data storage to the second array is completed, the storage address is switched back to the first array for data storage, and the data of the preset end segment in the second array is extracted and spliced with the data of the preset start segment in the first array to obtain the second spliced data.
[0023] The filtering module is used to perform Fourier transform and Kalman filtering on the first spliced data and the second spliced data to obtain the first filtering result and the second filtering result;
[0024] The conductor position identification module is used to determine the position of the conductor in the electromagnetic cruise system based on the first filtering result and the second filtering result.
[0025] A third aspect of this application provides an electronic device including a memory, a processor, and a program stored in the memory and executable on the processor, the program being loaded and executed by the processor to implement a wire position identification method for an electromagnetic cruise system.
[0026] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, causes the processor to implement a method for identifying the position of a conductor in an electromagnetic cruise system.
[0027] In summary, one or more technical solutions provided in this application have at least the following technical effects or advantages:
[0028] By employing the above technical solution, the original electromagnetic signals are stored alternately using a first array and a second array. During array switching, the last and first segments of adjacent arrays are extracted and concatenated, thus avoiding data fragmentation caused by data overwriting in a single storage space and ensuring the continuity of data used for signal processing. Simultaneously, Fourier transform and Kalman filtering are applied to the concatenated data to effectively filter out electromagnetic interference in the industrial environment and extract more accurate signal features. Analysis of the first and second filtering results allows for more precise determination of the conductor's position, thereby improving the conductor position identification accuracy of the electromagnetic cruise system. Attached Figure Description
[0029] Figure 1 This is a flowchart illustrating a method for identifying the position of a conductor in an electromagnetic cruise system, as provided in an embodiment of this application.
[0030] Figure 2 This is a schematic diagram of the structure of a conductor position identification system for an electromagnetic cruise system provided in an embodiment of this application;
[0031] Figure 3 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
[0032] Explanation of reference numerals in the attached drawings: 300, electronic device; 301, processor; 302, communication bus; 303, user interface; 304, network interface; 305, memory. Detailed Implementation
[0033] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.
[0034] In the description of the embodiments of this application, the words "for example" or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design that is described as "for example" or "for instance" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design options. Rather, the use of the words "for example" or "for instance" is intended to present the relevant concepts in a specific manner.
[0035] In the description of the embodiments of this application, the term "multiple" means two or more. For example, multiple systems means two or more systems, and multiple screen terminals means two or more screen terminals. 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 indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.
[0036] This application provides a method for identifying the position of a conductor in an electromagnetic cruise system. In one embodiment, please refer to... Figure 1 , Figure 1 This is a flowchart illustrating the conductor position identification method for an electromagnetic cruise system provided in this application. This method can be implemented using a computer program, which can be integrated into an application or run as a standalone utility application. The method can also be implemented using a microcontroller and can run on a conductor position identification system based on a von Neumann architecture electromagnetic cruise system. Specifically, the method may include the following steps:
[0037] Step 101: Obtain the original electromagnetic signal of the target coil in the electromagnetic cruise system, and set up a first array and a second array for alternating storage of the original electromagnetic signal.
[0038] The electromagnetic cruise system refers to a complete electromagnetic navigation device, primarily used for automated navigation in scenarios such as AGVs (Automated Guided Vehicles) and warehousing logistics. The system works by burying alternating current-carrying wires underground as navigation paths. The alternating current in the wires generates an alternating magnetic field in the surrounding area. The system determines the AGV's position relative to the wires by detecting these magnetic field signals, thus achieving precise path tracking and navigation positioning. The entire system includes ground-based wires, onboard detection equipment, a signal processing unit, and a control system.
[0039] A target coil is a sensor coil installed on the bottom of an AGV (Automated Guided Vehicle) to sense the magnetic field of a ground conductor. Multiple coils are typically arranged in an array. When the AGV passes over a buried conductor, the alternating magnetic field generated by the conductor induces a corresponding electromotive force in the target coil. The position, orientation, and number of turns of the coil are carefully designed to achieve optimal signal reception. Systems often configure multiple target coils to improve detection accuracy and reliability. Coils at different locations receive different signal strengths; by comparing and analyzing these differences, the position of the conductor can be accurately determined.
[0040] Raw electromagnetic signals refer to the electromagnetic induction signals directly induced by the target coil without any processing. These signals are typically AC voltage signals with the same frequency as the excitation current in the ground conductor. The amplitude of the signal reflects the distance between the coil and the conductor; the closer the distance, the stronger the signal. Due to various electromagnetic interference sources in industrial environments, raw electromagnetic signals often contain both useful signals and noise components, requiring subsequent signal processing to extract effective position information. These raw signals are converted into digital signals by an analog-to-digital converter before entering the digital signal processing flow.
[0041] The first and second arrays refer to two independent data storage areas allocated in system memory, used to alternately store digitized electromagnetic signal data after analog-to-digital conversion. Each array is a one-dimensional data structure, with each element corresponding to the signal amplitude at a sampling moment. The array length is pre-set according to the system's processing requirements. The two arrays have the same capacity and data format, and the data storage is switched alternately through program control. While one array is receiving new signal data, the other array stores previously acquired historical data. This double-buffering mechanism ensures that a continuous and complete data sequence can be obtained during signal processing.
[0042] Specifically, the system first collects the raw electromagnetic signals generated by the wires buried underground using an induction coil installed at the bottom of the AGV. These raw electromagnetic signals contain crucial information about the wire's location. However, due to various electromagnetic interference sources in the industrial environment, the collected signals are often mixed with noise. The system uses an analog-to-digital converter to convert the analog electromagnetic signals output by the induction coil into digital raw electromagnetic signals. The conversion frequency is set according to the wire excitation frequency, and the sampling frequency is typically set to 10-20 times the excitation frequency to ensure complete signal acquisition.
[0043] To address the issue of signal data fragmentation caused by traditional single-space cyclic overwriting, the system employs a first and second array for alternating storage of the original electromagnetic signals. The capacity of each array is pre-allocated based on the system's actual processing needs, typically configured to store 2-5 seconds of signal data. The first and second arrays are allocated independent storage spaces in memory, sharing the same data structure and storage capacity. Each array element stores the original electromagnetic signal amplitude at a single sampling moment. The system controls the current storage target by setting an array selection flag. When the flag is 0, data is written to the first array; when the flag is 1, data is written to the second array. This alternation mechanism ensures that while data is being stored in one array, historical data in the other is preserved.
[0044] The core advantage of the dual-array alternating storage mechanism lies in avoiding signal breakage caused by data overwriting. When the system needs to perform signal processing such as Fourier transform, it can extract continuous data segments from the two arrays and splice them together to form a complete signal sequence. This design allows the system to maintain the integrity of historical signal data for processing while continuously acquiring new signals, thus providing a reliable data foundation for subsequent conductor position identification.
[0045] Step 102: Store a preset number of raw electromagnetic signals into the first array.
[0046] Specifically, the system needs to store a preset number of raw electromagnetic signals into the first array. The determination of this preset number directly affects the effect of subsequent signal processing and the real-time performance of the system. Since the electromagnetic cruise system needs to track the continuously changing position of the conductor in real time, the amount of data processed at one time cannot be too large to avoid affecting the response speed, but it also cannot be too small to avoid insufficient signal characteristics. Therefore, the system presets this number based on the conductor excitation frequency and the desired processing accuracy. It is usually set to contain data points for 3-5 complete signal cycles to ensure that complete signal characteristics can be captured while maintaining good real-time performance.
[0047] In the specific implementation of data storage, the system first sets the storage address pointer to the beginning of the first array. Then, through a loop control structure, it sequentially reads the digitized raw electromagnetic signals output by the analog-to-digital converter. Each data point read is stored in the corresponding position of the first array, and the address pointer is incremented. To ensure the validity of the stored data, the system executes the valid signal detection mechanism described in claim 7 before starting storage. This involves traversing the raw electromagnetic signals through a threshold detection window. When the initial amplitude of the detected signal exceeds a preset threshold, the position is marked as the starting point of the valid signal, and data storage begins from this starting point, avoiding the use of invalid background noise as a useful signal for subsequent processing.
[0048] The storage procedure uses a sequential write method. The system maintains an array index counter, which is incremented by 1 for each data point stored. When the counter reaches a preset value, the write operation to the first array stops. Throughout the storage process, the system monitors data integrity in real time to ensure that each storage location contains valid signal data. It also uses a storage status flag to indicate the data fill status of the first array. Once storage is complete, the status flag is set to "full," providing a basis for subsequent array switching operations.
[0049] Based on the above embodiments, as an optional embodiment, step 102, storing a preset number of original electromagnetic signals into the first array, may further include the following steps:
[0050] Step 201: Set a threshold detection window, and iterate through the original electromagnetic signal based on the threshold detection window to detect the initial amplitude of the original electromagnetic signal.
[0051] Specifically, the system sets a threshold detection window to accurately identify the start position of a valid signal in a continuous stream of raw electromagnetic signals, avoiding misinterpretation of background noise or weak interference signals as useful conductor-induced signals. The threshold detection window is essentially a sliding data sampling window, typically set to 1 / 4 to 1 / 2 of the number of sampling points within one cycle of the excitation signal. This size captures the instantaneous characteristics of the signal without delaying the detection response due to an excessively large window. The system maintains a circular buffer to implement the sliding operation of the window. Each time a new raw electromagnetic signal sampling point is received, the oldest data point is removed from the window, and the new data point is added. Simultaneously, the statistical characteristics of all data points within the window, such as mean, peak value, or RMS value, are calculated. During the traversal, the system employs real-time streaming processing, eliminating the need to wait for all signal acquisitions to complete. Instead, it acquires and detects signals simultaneously, using a detection state machine to track the current detection stage and ensure timely detection of significant changes in signal amplitude. This real-time detection mechanism lays the foundation for subsequent rapid response.
[0052] Step 202: When the initial amplitude of the original electromagnetic signal is detected to exceed the preset threshold, mark the starting position of the threshold detection window as the effective signal start point.
[0053] Specifically, when the signal statistics within the threshold detection window indicate that the initial amplitude of the original electromagnetic signal exceeds a preset threshold, the system immediately marks the starting position of the current threshold detection window as the effective signal start point. This preset threshold is calibrated based on the actual application environment and noise level of the system, typically set to 20%-30% of the normal signal amplitude to ensure both effective identification of the real signal and suppression of noise interference. The system judges the signal start point by comparing the instantaneous amplitude, average amplitude, or energy value of the signal within the window with the preset threshold. Once the detection algorithm confirms that the signal strength indeed exceeds the threshold and persists for a certain duration, it considers the start of a valid conductor induction signal to have been detected. To avoid false triggering by instantaneous noise pulses, the system also sets a confirmation counter. Only when multiple consecutive sampling points meet the threshold condition is the existence of a valid signal finally confirmed. Once a valid signal is detected, the system records the data stream position index corresponding to the current moment and marks this index position as the effective signal start point, simultaneously triggering the subsequent data storage process. This precise start point marking ensures that the subsequently stored data are all valid signals that truly contain conductor position information.
[0054] Step 203: Determine the storage start address of the first array based on the effective signal start point, and store a preset number of original electromagnetic signals sequentially into the first array starting from the effective signal start point.
[0055] Specifically, the system determines the starting address of the first array's storage based on the marked valid signal start point. This determination process considers the array's memory layout and data alignment requirements to ensure efficient execution of subsequent data storage and retrieval operations. In practice, the system converts the time index of the valid signal start point into the corresponding memory address offset in the first array. If the valid signal start point does not begin at position 0 of the array, the system adjusts the storage start position accordingly to maintain the correct timing of the data. Starting from the valid signal start point, the system sequentially stores the original electromagnetic signals into consecutive memory locations in the first array according to a preset quantity. The storage process uses direct memory copy or DMA transfer to improve data transfer efficiency. During storage, the system maintains a storage counter in real time to track the amount of data stored. When the counter reaches the preset quantity, the storage operation stops and the array status flag is set to full. Through this precise storage method starting from the valid signal start point, the data stored in the first array consists entirely of valid electromagnetic signals containing conductor position information, avoiding interference from invalid data with subsequent signal processing algorithms. It also ensures the temporal continuity and integrity of the data, providing high-quality input data for subsequent Fourier transform and Kalman filtering processes.
[0056] Step 103: After the data storage in the first array is completed, the storage address is switched to the second array for data storage, and the data of the preset end segment in the first array is extracted and concatenated with the data of the preset start segment in the second array to obtain the first concatenated data.
[0057] The storage address refers to the control parameter used by the system to indicate which array the currently received raw electromagnetic signal should be written into when performing data storage operations.
[0058] The first concatenated data refers to a continuous sequence of signal data generated through cross-array data concatenation operations, which solves the data breakage problem that may occur in dual-array alternating storage.
[0059] Specifically, when the system detects that the storage counter of the first array has reached a preset number, it immediately performs a storage address switching operation, switching the storage target of subsequently received raw electromagnetic signals from the first array to the second array. The core purpose of this switching mechanism is to ensure that the continuity of signal acquisition is not interrupted and to avoid losing newly arrived electromagnetic signals during data processing. The system achieves fast storage address switching by modifying the global array selection flag. When the flag changes from 0 to 1, all new signal data is automatically routed to the storage space of the second array, while the first array enters a data protection state for subsequent processing. To ensure the atomicity of the switching process and data consistency, the system briefly disables interrupts or uses memory barrier instructions during the switching operation to ensure that the switching action is completed within one clock cycle, avoiding data loss or duplicate storage due to switching delays.
[0060] After a successful memory address switch, the system immediately begins cross-array data concatenation, a key technical step in resolving the circular overwriting problem inherent in traditional single memory spaces. Based on the signal processing algorithm's requirements, the system extracts a preset end segment of data from the end of the first array, representing the latest signal characteristics during the first array's storage period. Simultaneously, it extracts a preset start segment of data from the beginning of the second array, representing the earliest received new signal characteristics after the switch. The lengths of both data segments are dynamically calculated based on the wire excitation frequency, sampling frequency, and the specific requirements of the signal processing algorithm, ensuring that the concatenated data contains sufficient signal cycles to support subsequent frequency domain transformation processing.
[0061] The data splicing is implemented using a memory copy method. The system first allocates a contiguous buffer in memory to store the first spliced data. Then, it copies the data from the preset end segment and the preset start segment sequentially into this buffer according to time order, ensuring complete continuity of the spliced data in the time domain. During the splicing process, the system verifies the continuity of the timestamps and the rationality of amplitude changes between the two data segments. If an anomaly is detected, a data verification mechanism is triggered for correction. After splicing is complete, the system marks the generated first spliced data as usable and assigns it a unique data identifier so that subsequent signal processing can correctly index and use it.
[0062] Through this cross-array splicing mechanism, the system successfully solves the problem of signal data breaking at the storage boundary in traditional methods. The first spliced data contains continuous electromagnetic signals spanning two storage cycles, providing complete signal feature information for subsequent Fourier transforms.
[0063] Based on the above embodiments, as an optional embodiment, step 103: extracting the data from the preset end segment of the first array and concatenating it with the data from the preset start segment of the second array to obtain the first concatenated data, may further include the following steps:
[0064] Step 301: Obtain the conductor excitation frequency and sampling frequency of the electromagnetic cruise system, and determine the target data length based on the ratio of the conductor excitation frequency and the sampling frequency.
[0065] Specifically, the system acquires the conductor excitation frequency and sampling frequency of the electromagnetic cruise system to scientifically determine the required data length for cross-array splicing, ensuring that the spliced data contains complete signal characteristics without affecting processing efficiency due to excessive data. The conductor excitation frequency is the frequency of the alternating current passing through the conductor buried underground, typically set in the range of 1kHz to 20kHz. This frequency determines the fundamental frequency characteristics of the original electromagnetic signal received by the target coil. The sampling frequency is the frequency at which the analog-to-digital converter digitizes the analog electromagnetic signal. According to the Nyquist sampling theorem, the sampling frequency must be at least twice the highest frequency of the signal to completely retain signal information. In practical applications, it is usually set to 10-20 times the conductor excitation frequency to ensure sampling accuracy. The system determines the number of sampling points contained in one signal cycle by calculating the ratio of the conductor excitation frequency to the sampling frequency. Then, based on the requirements of the signal processing algorithm, this ratio is multiplied by an appropriate coefficient to obtain the target data length. This length is typically set to contain data points for 2-4 complete signal cycles, ensuring both the accuracy of frequency domain transformation and good real-time performance.
[0066] Based on the above embodiments, as an optional embodiment, step 301, which involves determining the target data length based on the ratio of the conductor excitation frequency to the sampling frequency, may further include the following steps:
[0067] Step 311: Calculate the ratio of the sampling frequency to the conductor excitation frequency to obtain the number of sampling points per cycle; use the product of the number of sampling points per cycle and the preset number of cycles as the first reference length.
[0068] Specifically, the number of sampling points per cycle is determined by calculating the ratio of the sampling frequency to the conductor excitation frequency. This is a fundamental calculation step in establishing the relationship between the signal's time and frequency domains, ensuring that the subsequent Fourier transform can accurately extract the signal's frequency characteristics. In practice, the system divides the analog-to-digital converter's sampling frequency by the conductor excitation frequency; the quotient is the number of sampling points per cycle. This value represents the number of discrete data points acquired by the system within one conductor excitation signal cycle. For example, when the sampling frequency is 20kHz and the conductor excitation frequency is 2kHz, the number of sampling points per cycle is 10, meaning that each excitation signal cycle is digitized into 10 discrete sample values. The system then multiplies the calculated number of sampling points per cycle by a preset number of cycles to obtain the first reference length. The preset number of cycles is typically set to 2 to 4 cycles to ensure that the spliced data contains sufficient periodic information for Fourier transform analysis. By including multiple complete signal cycles, the first reference length ensures that the frequency domain transformation can accurately identify the fundamental frequency and its harmonic components, avoiding the problem of reduced frequency resolution due to insufficient data length, while providing a stable and reliable frequency domain feature input for subsequent Kalman filtering.
[0069] Step 321: Detect the noise frequency in the original electromagnetic signal, determine the minimum data processing length based on the noise frequency, and use the minimum data processing length as the second reference length.
[0070] Specifically, noise frequency detection of the original electromagnetic signal is performed to determine the minimum data processing length required to suppress environmental interference, ensuring that the signal processing algorithm can effectively distinguish useful signals from noise components. Noise frequency detection is achieved by performing a Fast Fourier Transform (FFT) on a segment of the original electromagnetic signal. The system analyzes the spectral characteristics after the transform, identifying other frequency components different from the conductor excitation frequency and its harmonics. These abnormal frequency components typically originate from switching noise of the motor driver, power supply ripple, or electromagnetic interference in the environment. The system filters out significant noise frequency components by setting amplitude thresholds and records the frequency and intensity information of these noises. Based on the detected noise frequency characteristics, the system calculates the minimum data processing length required to effectively suppress this noise. The principle for determining this length is to ensure that the digital filtering algorithm has a sufficient data window to distinguish the frequency differences between the signal and noise. Specifically, the system uses the difference between the lowest noise frequency and the conductor excitation frequency as the frequency resolution requirement, and then calculates the corresponding minimum data length according to the Fourier transform frequency resolution formula. This calculation result is used as a second reference length, thereby ensuring that subsequent signal processing can effectively separate useful signals from environmental noise in the frequency domain.
[0071] Step 331: Determine the minimum length value that is greater than the first reference length and the second reference length as the target data length.
[0072] Specifically, the minimum length value greater than both the first and second reference lengths is determined as the target data length. This length determination mechanism simultaneously addresses the dual requirements of signal periodicity feature extraction and noise suppression, ensuring that the spliced data meets the accuracy requirements of frequency domain analysis while effectively suppressing environmental interference. In practice, the system first compares the values of the first and second reference lengths, selecting the larger value as the baseline length. Then, a safety margin is added to this baseline to obtain the final target data length. The safety margin is set to account for potential signal fluctuations and the stability requirements of the processing algorithm in practical applications, typically set to 10%-20% of the baseline length. The system also verifies whether the determined target data length exceeds the maximum storage capacity of the array. If it does, the preset number of periods needs to be adjusted or the parameter settings of the noise detection algorithm need to be optimized. Through this comprehensive length determination method, the target data length ensures that it contains sufficient signal periodic information to support accurate frequency domain analysis while also ensuring a sufficient data window for effective noise suppression, thus providing a scientifically reasonable length standard for the generation of the first spliced data. This dynamic length determination mechanism enables the electromagnetic cruise system to adaptively adjust data processing parameters according to the actual signal environment, maintaining stable and reliable conductor position identification performance even in complex electromagnetic environments, significantly improving the system's environmental adaptability and anti-interference capability.
[0073] Step 302: Determine the first data length of the preset end segment as the preset proportion of the target data length, and extract the data of the first data length from the end of the first array as the data of the preset end segment; subtract the first data length from the target data length to obtain the second data length of the preset start segment, and extract the data of the second data length from the beginning of the second array as the data of the preset start segment.
[0074] Specifically, the target data length is allocated according to a preset ratio to determine how much data to extract from each of the two arrays for concatenation. This ratio is designed to consider the temporal continuity of the signal and the characteristics of the processing algorithm. The preset ratio is typically set to 30%-50%, meaning the preset end segment's data length accounts for 30%-50% of the target data length. This ensures that the data extracted from the first array contains sufficient historical signal features while leaving enough space for the data in the second array. The system first calculates the preset end segment's data length, then truncates data of the corresponding length starting from the last storage position of the first array. This data represents the signal features closest to the switching moment during the storage period of the first array. Next, the system calculates the preset start segment's data length by subtracting the preset end segment's data length from the target data length, and then truncates data of the corresponding length starting from the first storage position of the second array. This data represents the earliest new signal features received after switching to the second array. During the data truncation process, the system verifies the validity of the truncation position to ensure it does not exceed the actual storage range of the array, and checks whether the truncated data contains valid signal content rather than blank or outlier values.
[0075] Step 303: Arrange the data of the preset end segment and the data of the preset start segment in sequence according to the time relationship to generate the first spliced data.
[0076] Specifically, the data from the preset end segment and the preset start segment are arranged and combined according to a strict temporal sequence to generate the first concatenated data with temporal continuity. This process requires ensuring that the concatenated data is completely continuous in the temporal domain without repetition or omission. In implementation, firstly, a contiguous storage space equal to the target data length is allocated in memory as the storage area for the first concatenated data. Then, the data from the preset end segment is copied sequentially to the first half of the storage area, and the data from the preset start segment is copied sequentially to the second half. During the concatenation process, the system maintains strict timestamp records to ensure that each data point maintains the correct temporal position in the concatenated sequence, avoiding temporal sequence errors caused by the concatenation operation. After concatenation, the system performs integrity verification on the generated first concatenated data, including checking whether the data length meets expectations, whether the data values are within a reasonable range, and whether the changes between adjacent data points are continuous. Through this precise timing splicing operation, the first spliced data successfully and seamlessly connects the electromagnetic signals spanning two storage cycles to form a complete signal sequence. This provides continuous and complete input data for the subsequent Fourier transform, avoiding spectral analysis errors caused by data breaks. This ensures that the conductor position identification algorithm can obtain accurate and reliable frequency domain feature information, ultimately improving the navigation accuracy and stability of the entire electromagnetic cruise system.
[0077] Step 104: After the data storage to the second array is completed, switch the storage address back to the first array for data storage, and extract the data from the preset end segment of the second array and concatenate it with the data from the preset start segment of the first array to obtain the second concatenated data.
[0078] The second spliced data refers to another continuous signal data sequence generated through cross-array data splicing operations during the second switching cycle of the dual-array circular storage mechanism.
[0079] Specifically, when the system detects that the storage counter of the second array has reached a preset number, it immediately performs a storage address reversal operation, switching the storage target of subsequently received raw electromagnetic signals from the second array back to the first array. This cyclic switching mechanism is designed to achieve complete parallelization of data acquisition and signal processing, avoiding data acquisition interruptions or processing delays caused by the limitation of a single storage space. The system achieves storage address reversal by resetting the global array selection flag from 1 to 0. After the flag change is complete, all newly received raw electromagnetic signals are automatically routed to the storage space of the first array, while the second array enters a data protection state for use in the upcoming signal processing. During the storage address switching process, the system clears the historical data in the first array and resets its storage pointer, ensuring that the new round of data storage starts from the beginning of the array. Simultaneously, it maintains a timestamp record of the storage switch to ensure the timing accuracy of subsequent data concatenation.
[0080] After successfully switching back to the first array, the system immediately initiates a second round of cross-array data concatenation. This involves extracting data from the second array's preset end segment and concatenating it with data from the first array's preset start segment to generate the second concatenated data. This concatenation process resolves the data continuity issue in the second storage cycle of dual-array circular storage. Specifically, based on the previously determined target data length and preset ratio, the system extracts the preset end segment of data from the end of the second array backwards. This data contains the electromagnetic signal characteristics closest to the storage switch time during the second array's storage period. Simultaneously, the system extracts the preset start segment of data from the beginning of the first array backwards. This data represents the most recently received original electromagnetic signal after switching back to the first array. During data extraction, the system verifies the integrity and validity of the data in the second array, ensuring that the extracted preset end segment data does not contain any outliers or uninitialized data that may have occurred during storage. It also checks whether the newly stored data in the first array has reached the required length of the preset start segment.
[0081] The system extracts preset end-of-line and preset start-of-line data and arranges them according to a strict temporal sequence to generate a second concatenated data set with complete temporal continuity. This concatenation process must ensure seamless connection between the two data segments in the time domain. Specifically, the system allocates a contiguous storage area in memory equal to the length of the target data. First, the preset end-of-line data of the second array is copied to the first half of the storage area in chronological order. Then, the preset start-of-line data of the first array is copied to the second half of the storage area in chronological order, maintaining a strict correspondence between data indices and timestamps during the copying process. After concatenation, the system performs integrity verification on the generated second concatenated data, including verifying whether the data length meets the target requirements, checking the continuity and rationality of data values, and confirming whether signal changes at the concatenation points transition smoothly.
[0082] Through this combination of dual-array cyclic switching and cross-array concatenation mechanism, the second concatenated data successfully ensures the continuity of electromagnetic signals within the second storage cycle, providing another set of complete and continuous input data for the signal processing algorithm.
[0083] Step 105: Perform Fourier transform and Kalman filtering on the first and second spliced data to obtain the first and second filtering results.
[0084] The first filtering result refers to the conductor position information data obtained after processing the first spliced data through Fourier transform and Kalman filtering.
[0085] The second filtering result refers to the conductor position information data obtained after processing the second spliced data through Fourier transform and Kalman filtering.
[0086] Specifically, performing Fourier transform and Kalman filtering on the first and second spliced data respectively is to extract accurate conductor position information from continuous electromagnetic signals and to eliminate the influence of environmental noise and measurement errors through filtering algorithms. The Fourier transform is first implemented on the first spliced data. The system uses a Fast Fourier Transform (FFT) algorithm to convert the time-domain electromagnetic signal data to the frequency domain. During the transformation, the input data is preprocessed, including removing DC components, applying a Hanning window function to reduce spectral leakage, and performing data normalization to improve transformation accuracy. After the transformation, the system extracts the conductor position feature information by analyzing the frequency domain amplitude spectrum and phase spectrum. The amplitude spectrum reflects the relationship between signal strength and conductor distance, while the phase spectrum contains the direction information of the conductor's relative position.
[0087] The system then performs Kalman filtering on the Fourier transform results of the first spliced data. The Kalman filter describes the dynamic changes in the conductor's position by establishing a state-space model. State variables include the conductor's lateral and longitudinal positions and their rates of change, while observation variables are positional feature parameters extracted from frequency domain analysis. During the filtering process, the system first predicts the state based on the previous time-space state estimate and the system model. Then, it corrects the prediction using the current time-space observation data, balancing the weights of the predicted and observed values through Kalman gain calculation. The filter also updates the covariance matrix in real time to reflect changes in the estimation error. After Kalman filtering, the first spliced data generates the first filtered result, which includes the conductor position estimate after noise suppression and error correction, along with corresponding confidence information.
[0088] Similarly, the system performs the same Fourier transform and Kalman filtering process on the second pieced data. A Fast Fourier Transform (FFT) is used to transform the second pieced data from the time domain to the frequency domain, extracting the frequency characteristics and phase information of the conductor excitation signal. When performing Kalman filtering on the second pieced data, the system uses the state estimate from the first filtering result as an initial condition, updating the conductor position estimate through recursive filter calculations. This continuous processing method based on the filtering result from the previous moment ensures the temporal continuity and consistency of the position estimate. After complete Fourier transform and Kalman filtering, the second pieced data generates a second filtered result, which includes the conductor position estimate at the current moment and incorporates historical information and dynamic predictions.
[0089] By performing Fourier transform and Kalman filtering on the two sets of spliced data respectively, the system obtains two sets of complementary conductor position information from the first and second filtering results. This dual-path parallel processing mechanism significantly improves the accuracy of the electromagnetic cruise system.
[0090] Step 106: Determine the position of the conductor in the electromagnetic cruise system based on the first and second filtering results.
[0091] In this application, the conductor position refers to the precise spatial position information of the excitation conductor buried underground relative to the electromagnetic cruise system, which is determined by fusing the first and second filtering results. This information comprehensively reflects the relative positional relationship between the excitation conductor and the electromagnetic cruise system, providing an accurate and reliable positional reference for the system's autonomous navigation and path tracking, and ensuring that the electromagnetic cruise system can operate precisely along the predetermined conductor path.
[0092] Specifically, to accurately identify the conductor's position, a dual-channel signal cross-validation scheme is adopted, involving the first and second filtering results. First, peak detection is performed on both the first and second filtering results to obtain a first set of peak points and a second set of peak points. In industrial environments with interference, these peak points may contain abnormal peaks caused by random interference, thus requiring peak point screening. By analyzing the characteristic patterns of adjacent peak points, abnormal peak points that do not meet expectations are eliminated, resulting in a first set of candidate positions and a second set of candidate positions. To improve the reliability of position identification, the position points in the two candidate sets are paired for analysis. During the pairing process, position points are screened based on pre-set spatial characteristic parameters to obtain valid position point pairs that meet the conditions. The peak characteristics of these valid position point pairs are analyzed, and the final conductor position is determined by matching them with calibration data. This position identification method based on dual-channel signal feature fusion fully utilizes the complementarity of signals and effectively overcomes the influence of electromagnetic interference in industrial environments.
[0093] Based on the above embodiments, as an optional embodiment, step 106, determining the position of the conductor in the electromagnetic cruise system based on the first filtering result and the second filtering result, may further include the following steps:
[0094] Step 401: Perform peak detection on the first filtering result and the second filtering result respectively to obtain the first peak point set and the second peak point set.
[0095] Specifically, peak detection is performed on the first and second filtering results to accurately identify the characteristic peak positions of the conductor excitation signal from the filtered signal data. These peak positions directly correspond to the conductor's spatial position information. The peak detection algorithm first preprocesses the first filtering result by setting amplitude and gradient thresholds to filter candidate peak points. The system uses a sliding window technique to search for local maxima in the filtered result data sequence. When the amplitude of a data point is greater than the amplitudes of all points in its left and right neighborhoods and exceeds a preset minimum amplitude threshold, the point is marked as a candidate peak point. The system further verifies the effectiveness by analyzing the second derivative characteristics of the candidate peak points. A true peak point should have a negative second derivative value at its location, indicating that the point is an extremum of a concave function. After processing by the peak detection algorithm, the first filtering result generates a first peak point set, which includes the position coordinates, amplitude, and sharpness index of all detected valid peak points. Similarly, the system performs the same peak detection process on the second filtering result, using the same threshold settings and algorithm parameters to ensure the consistency of the detection results, and finally generates a second set of peak points. The two sets of peak points provide basic feature point data for subsequent location analysis and traverse positioning.
[0096] Step 402: Based on the amplitude difference and spacing between adjacent peak points in the first peak point set, remove abnormal peak points to obtain the first candidate location set; and based on the amplitude difference and spacing between adjacent peak points in the second peak point set, remove abnormal peak points to obtain the second candidate location set.
[0097] Specifically, abnormal peak points are eliminated based on the amplitude difference and spacing information of adjacent peak points in the first and second peak point sets. This aims to eliminate false peak points caused by noise interference, signal reflection, or equipment failure, ensuring the accuracy and reliability of the candidate location set. For the first peak point set, the system first calculates the amplitude difference between each peak point and its adjacent peak points. When the amplitude difference between two adjacent peak points exceeds a preset amplitude difference threshold, the system further analyzes the rationality of this difference. If a peak point with a smaller amplitude also has abnormal spacing characteristics or its peak sharpness is significantly lower than normal, it is marked as an abnormal peak point. The system also checks the spatial spacing between adjacent peak points. Based on the physical characteristics of the conductor excitation signal, normal peak points should have a relatively stable spacing distribution. When the spacing between a peak point and its adjacent points deviates significantly from the expected value, the system identifies it as an abnormal point. The elimination of abnormal peak points uses an iterative optimization algorithm. The system gradually improves the quality of the peak point set through multiple rounds of screening. After each round of screening, the statistical characteristics of the remaining peak points are recalculated and the discrimination threshold is updated. After outlier removal, the first set of peak points is transformed into the first set of candidate locations. Similarly, the second set of peak points is processed in the same way to generate the second set of candidate locations. The two sets of candidate locations contain reliable candidate locations that have been screened for quality, laying a solid foundation for accurate traverse positioning.
[0098] Step 403: Pair the location points in the first candidate location set with the location points in the second candidate location set and filter the valid location point pairs according to the spatial distance threshold.
[0099] Specifically, the system pairs location points in the first candidate location set with those in the second candidate location set and filters valid pairings based on a spatial distance threshold. This process aims to improve the accuracy and reliability of location estimation through cross-validation of two independent measurement results. The pairing algorithm employs a nearest neighbor matching strategy. The system calculates the Euclidean distance between each location point in the first candidate location set and all location points in the second candidate location set, and finds the nearest location point in the second set for each location point in the first set as a pairing candidate. During the pairing process, the system also considers the amplitude similarity of the location points. Only when the spatial distance between two location points is less than a preset spatial distance threshold and the amplitude difference is within a reasonable range are they considered valid pairings. The system uses a dynamic threshold adjustment mechanism, adaptively adjusting the spatial distance threshold based on the noise level and signal quality of the current measurement environment. A stricter distance threshold is used when the signal quality is good to improve accuracy, while the threshold is appropriately relaxed when the signal quality is poor to ensure a sufficient number of valid pairings. After pairing, the system also performs a consistency check on the pairing results. By analyzing the spatial distribution pattern of valid pairings, the system verifies the rationality of the pairing results and eliminates abnormal pairings that clearly do not conform to the geometric characteristics of the conductor. After pairing and filtering, the system obtained a set of valid location point pairs that have been doubly verified. These point pairs have higher confidence in location estimation and provide a reliable data basis for the final determination of the traverse location.
[0100] Based on the above embodiments, as an optional embodiment, step 403, which involves pairing the location points in the first candidate location set with the location points in the second candidate location set and filtering valid location point pairs based on a spatial distance threshold, may further include the following steps:
[0101] Step 413: Determine the spatial distance threshold based on the installation spacing of the two sensors in the electromagnetic cruise system; use the sliding window method to traverse the first candidate position set, and for each position point within the window, search for position point pairs in the second candidate position set whose position point spacing is less than the spatial distance threshold.
[0102] Specifically, the spatial distance threshold is determined based on the installation spacing of the two sensors in the electromagnetic cruise system, and a sliding window method is used for position point pairing search. The purpose of this process is to establish reasonable matching constraints and an efficient search mechanism to ensure accurate identification of valid position point pairs corresponding to the same conductor position. The determination of the spatial distance threshold is based on the physical installation spacing of the two sensors and the measurement accuracy characteristics of the system. The system first obtains the actual installation spacing parameters of the two sensors on the electromagnetic cruise system, and then calculates the uncertainty range of the position estimation based on the sensor measurement error distribution and environmental noise level. The installation spacing and uncertainty range are comprehensively considered to set the spatial distance threshold. This threshold must be large enough to accommodate normal measurement errors, and small enough to exclude obviously mismatched position point pairs. The sliding window method is implemented by moving a fixed-size window step-by-step in the first candidate position set according to position order. The window size is determined based on the spatial correlation of the conductor excitation signal and the density distribution of candidate position points, ensuring that the window contains sufficient position information while avoiding excessive computational complexity. For each location point within the window, the system performs a neighborhood search within a second candidate location set. It identifies candidate pairs that meet distance criteria by calculating the Euclidean distance between the current location point and all locations in the second candidate location set. When the distance is less than a preset spatial distance threshold, the corresponding location point is included in the candidate pairing range. During the search process, the system also records the distance value, orientation angle, and signal characteristic parameters of each pairing, providing detailed criteria for subsequent pairing optimization. Through this pairing method based on sensor geometric constraints and sliding window search, the system can effectively and quickly identify spatially reasonable location point pairs from a large number of candidate location points, significantly improving the efficiency and accuracy of the pairing search.
[0103] Step 423: If the number of searched location point pairs is a single pair, then the searched location point pair is taken as a valid location point pair; if the number of searched location point pairs is multiple, then the phase difference between each location point pair is calculated, and the location point pair with the smallest phase difference from the preset phase difference is taken as a valid location point pair.
[0104] Specifically, different strategies are employed to determine valid location point pairs based on the number of searched pair numbers. This case-by-case mechanism aims to obtain the most reliable location pairing results under various signal environments and measurement conditions. When only one location point pair is found, it indicates that only one candidate pair has been found under the current spatial distance threshold constraint. The system directly uses this location point pair as the valid pair. This situation typically occurs in environments with good signal quality and low noise interference, where a single pairing result has high reliability. When multiple location point pairs are found, the system requires a further discrimination mechanism to select the optimal pairing result. In this case, the system calculates the phase difference between each location point pair as the discrimination criterion. The phase difference is calculated based on the phase information of the signals at the two location points, extracting phase parameters by analyzing the frequency domain characteristics of the signals. The system pre-sets a preset phase difference based on the characteristics of the conductor excitation signal and the sensor geometry. This preset value reflects the phase relationship that two measurement points corresponding to the same conductor position should have under ideal conditions. During the phase difference matching process, the system calculates the difference between the actual phase difference and the preset phase difference for each candidate location point pair. The smaller the difference, the more the location point pair conforms to the theoretical expectation and the more likely it corresponds to the actual conductor position. The system selects the point pairs with the smallest phase difference from the preset phase difference as valid point pairs and records the matching degree index of these pairs for subsequent quality assessment. During phase difference calculation, the system also considers the periodicity of the phase and uses a phase unfolding algorithm to handle potential phase jumps, ensuring the accuracy of the phase difference calculation. Through this method of determining valid point pairs based on single direct selection and multiple phase matching, the system can reliably identify the optimal point pairing results in various complex measurement environments, providing a high-quality data foundation for accurate traverse position determination and effectively improving the navigation accuracy and stability of the electromagnetic cruise system in complex environments.
[0105] Step 404: Normalize the peak amplitude of the valid position point pairs, calculate the amplitude ratio of each pair of position points, and match it with the preset calibration curve; weight the valid position point pairs according to the matching results, and select the center position of the position point pair with the largest weight value as the conductor position.
[0106] Specifically, the peak amplitudes of valid location point pairs are normalized, and the amplitude ratio is calculated and matched with a preset calibration curve. A weighted selection mechanism determines the final traverse position. This process aims to eliminate the influence of differences in absolute amplitude values under different measurement conditions and utilize prior knowledge from the calibration curve to improve the accuracy of position estimation. The normalization process first divides the peak amplitudes of the two location points in each valid location point pair by the largest amplitude value in their respective candidate location sets to obtain standardized amplitude data. Then, the amplitude ratio of each pair of location points is calculated; this ratio reflects the relative intensity relationship between two independent measurement results. The system maintains a calibration curve obtained through numerous calibration experiments. This curve describes the correspondence between the amplitude ratio at different spatial locations and the actual traverse position. The matching process determines the optimal matching position by calculating the distance between the amplitude ratio of each location point pair and each point on the calibration curve. The system assigns weights to each valid location point pair based on the matching results, with higher matching degrees receiving greater weights. The weights are adjusted considering factors such as spatial consistency and amplitude stability of the location point pairs. After weighted calculation, the system selects the pair of points with the largest weighted value and calculates the geometric center of the two points in the pair as the final determined traverse position. This position integrates information from two sets of filtering results and achieves higher accuracy through calibration curve correction. Through this comprehensive positioning method based on peak detection, outlier removal, pair verification, and weighted fusion, the system achieves high-precision determination of the traverse position, improving the navigation accuracy of the electromagnetic cruise system.
[0107] Based on the above embodiments, as an optional embodiment, in step 404: normalizing the peak amplitude of the effective location point pairs, calculating the amplitude ratio of each pair of location points, and matching it with a preset calibration curve, this step may further include the following steps:
[0108] Step 414: Obtain the peak amplitude of the position points from the first candidate position set in each valid position point pair, divide the obtained peak amplitude by the maximum value among the peak amplitudes to obtain the first normalized amplitude sequence; Obtain the peak amplitude of the position points from the second candidate position set in each valid position point pair, divide the obtained peak amplitude by the maximum value among the peak amplitudes to obtain the second normalized amplitude sequence.
[0109] Specifically, the system acquires and normalizes the peak amplitudes from the two candidate location sets for each valid location pair. This process aims to eliminate the influence of differences in absolute amplitudes under different measurement conditions, establish a unified amplitude comparison benchmark, and provide standardized data input for subsequent calibration and matching. The system first traverses all valid location pairs, extracting the peak amplitudes from the location points in the first candidate location set for each pair. These amplitudes reflect the strength of the conductor excitation signal detected by the first sensor at the corresponding location. After assembling all extracted peak amplitudes into an original amplitude sequence, the system finds the maximum value as the normalization benchmark. Normalization is achieved by dividing each peak amplitude by the maximum peak amplitude. In the resulting first normalized amplitude sequence, all values are between 0 and 1, with the location point corresponding to the maximum value having a normalized amplitude of 1. The normalized amplitudes of other location points reflect their signal strength ratio relative to the location with the strongest signal. Similarly, the system performs the same normalization process on the location points from the second candidate location set, extracting the peak amplitude of the second location point in each valid location point pair, calculating the maximum value among these amplitudes, and then dividing all peak amplitudes by this maximum value to obtain the second normalized amplitude sequence. The two normalized amplitude sequences have the same length, and each element in the sequence corresponds to the normalized signal strength of the two location points in the same valid location point pair. The normalization process effectively eliminates absolute amplitude differences caused by factors such as sensor gain differences, changes in environmental conditions, or signal propagation loss, making the signal strengths of different location points comparable and laying a data foundation for accurate location matching.
[0110] Step 424: Determine the amplitude ratio sequence based on the second normalized amplitude sequence and the first normalized amplitude sequence, and sample the calibration curve at equal intervals according to the length of the amplitude ratio sequence to generate a discrete calibration point set.
[0111] Specifically, an amplitude ratio sequence is determined based on two normalized amplitude sequences, and a discrete calibration point set is generated by sampling the preset calibration curve at equal intervals. This process aims to establish the correspondence between the measurement data and the calibration reference, achieving position estimation optimization based on prior knowledge. The amplitude ratio sequence is calculated by dividing each element in the second normalized amplitude sequence by the element at the corresponding position in the first normalized amplitude sequence. The resulting ratio reflects the relative signal strength relationship between the two position points in each effective position point pair. This relative relationship has good stability and is not easily affected by changes in environmental conditions. The system determines the sampling interval of the calibration curve based on the length of the amplitude ratio sequence. The sampling interval is calculated by dividing the domain length of the calibration curve by the length of the amplitude ratio sequence, ensuring that the generated discrete calibration point set has the same number of data points as the actual measurement data. The equal-interval sampling process starts from the starting point of the calibration curve and sequentially selects sampling points on the curve according to the calculated sampling interval. Each sampling point contains position coordinates and the corresponding calibration amplitude ratio, and all sampling points form the discrete calibration point set. The calibration curve itself is obtained by fitting a large amount of experimental data, reflecting the distribution law of the amplitude ratio of the two sensor signals at different spatial locations under ideal conditions. Discretization processing transforms the continuous calibration curve into a discrete point set consistent with the measured data format, which facilitates numerical comparison and matching calculation.
[0112] Step 434: Based on the deviation between the amplitude ratio sequence and each calibration point in the discrete calibration point set, generate a deviation curve, and take the calibration point corresponding to the minimum point in the deviation curve as the matching result.
[0113] Specifically, a deviation curve is generated based on the deviation between the amplitude ratio sequence and each calibration point in the discrete calibration point set. The optimal matching result is determined by finding the minimum point. The purpose of this process is to find the position where the measured data best matches the calibration reference through numerical optimization methods, thereby obtaining the most accurate traverse position estimate. The deviation calculation adopts a point-by-point comparison method. The system calculates the difference between each value in the amplitude ratio sequence and the amplitude ratio of the corresponding calibration point in the discrete calibration point set, obtaining the deviation value at each position. All deviation values are arranged in positional order to form the deviation curve. The deviation curve reflects the degree of agreement between the measured amplitude ratio sequence and the calibration reference throughout the measurement area. The smaller the deviation value, the closer the measurement result at that position is to the calibration expectation, and the more likely it corresponds to the true traverse position. The system uses numerical analysis methods to search for the minimum point in the deviation curve. Candidate extreme points are identified by calculating the first derivative of the deviation curve, and the nature of the minimum point is confirmed by judging the sign of the second derivative, ensuring that a local minimum is selected rather than a maximum or saddle point. When multiple minimum points exist in the deviation curve, the system selects the location corresponding to the global minimum as the optimal matching result. The calibration points in the discrete calibration point set corresponding to this location are then determined as the matching result. The matching result includes not only the coordinate information of the optimal matching location but also matching quality indicators. The reliability of the matching is evaluated by analyzing the depth of the minimum value and the steepness of the surrounding deviation distribution. The system also performs a reasonableness check on the matching result by comparing the deviation of the matching location from the geometric center of the valid location point to verify the consistency of the result. When the deviation exceeds a preset threshold, a mechanism is triggered to re-match or reduce the confidence level of the result. Through this matching method based on deviation curve analysis and extreme value optimization, the system achieves accurate matching between measurement data and calibration references.
[0114] Reference Figure 2 This application provides a conductor position identification system for an electromagnetic cruise system. The system includes: a signal acquisition module, a data splicing module, a filtering module, and a conductor position identification module, wherein:
[0115] The signal acquisition module is used to acquire the original electromagnetic signal of the target coil in the electromagnetic cruise system, and to set up a first array and a second array for alternating storage of the original electromagnetic signal;
[0116] The data splicing module is used to store a preset number of raw electromagnetic signals into a first array; after the data storage in the first array is completed, the storage address is switched to the second array for data storage, and the data of the preset end segment in the first array is extracted and spliced with the data of the preset start segment in the second array to obtain the first spliced data; after the data storage in the second array is completed, the storage address is switched back to the first array for data storage, and the data of the preset end segment in the second array is extracted and spliced with the data of the preset start segment in the first array to obtain the second spliced data;
[0117] The filtering module is used to perform Fourier transform and Kalman filtering on the first spliced data and the second spliced data to obtain the first filtering result and the second filtering result;
[0118] The conductor position identification module is used to determine the position of the conductor in the electromagnetic cruise system based on the first filtering result and the second filtering result.
[0119] Based on the above embodiments, the signal acquisition module is further configured to set a threshold detection window, traverse the original electromagnetic signal based on the threshold detection window, and detect the initial amplitude of the original electromagnetic signal; when the initial amplitude of the original electromagnetic signal exceeds a preset threshold, the starting position of the threshold detection window is marked as the effective signal starting point; the storage starting address of the first array is determined according to the effective signal starting point, and a preset number of original electromagnetic signals are stored sequentially into the first array starting from the effective signal starting point.
[0120] Based on the above embodiments, the data splicing module is further used to obtain the conductor excitation frequency and sampling frequency of the electromagnetic cruise system, determine the target data length according to the ratio of the conductor excitation frequency and the sampling frequency; determine the first data length of the preset end segment as a preset ratio of the target data length, and extract the data of the first data length from the end of the first array as the data of the preset end segment; subtract the first data length from the target data length to obtain the second data length of the preset start segment, and extract the data of the second data length from the beginning of the second array as the data of the preset start segment; arrange the data of the preset end segment and the data of the preset start segment in sequence according to the time relationship to generate the first spliced data.
[0121] Based on the above embodiments, the data splicing module is also used to calculate the ratio of the sampling frequency to the excitation frequency of the conductor to obtain the number of sampling points per cycle; the product of the number of sampling points per cycle and the preset number of cycles is used as the first reference length; the noise frequency in the original electromagnetic signal is detected, the minimum data processing length is determined according to the noise frequency, and the minimum data processing length is used as the second reference length; the minimum length value that is greater than the first reference length and the second reference length is determined as the target data length.
[0122] Based on the above embodiments, the conductor position identification module is further configured to perform peak detection on the first filtering result and the second filtering result respectively to obtain a first peak point set and a second peak point set; based on the amplitude difference and spacing of adjacent peak points in the first peak point set, abnormal peak points are removed to obtain a first candidate position set, and based on the amplitude difference and spacing of adjacent peak points in the second peak point set, abnormal peak points are removed to obtain a second candidate position set; the position points in the first candidate position set are paired with the position points in the second candidate position set, and valid position point pairs are selected according to a spatial distance threshold; the peak amplitude of the valid position point pairs is normalized, the amplitude ratio of each pair of position points is calculated, and it is matched with a preset calibration curve; the valid position point pairs are weighted according to the matching results, and the center position of the position point pair with the largest weight value is selected as the conductor position.
[0123] Based on the above embodiments, the conductor position identification module is also used to determine the spatial distance threshold according to the installation spacing of the two sensors in the electromagnetic cruise system; to traverse the first candidate position set using the sliding window method, and for each position point in the window, to search for position point pairs in the second candidate position set whose position point spacing is less than the spatial distance threshold; if the number of searched position point pairs is a single pair, then the searched position point pairs are taken as valid position point pairs; if the number of searched position point pairs is multiple, then the phase difference between each position point pair is calculated, and the position point pair with the smallest phase difference from the preset phase difference is taken as a valid position point pair.
[0124] Based on the above embodiments, the conductor position identification module is further configured to: acquire the peak amplitude of position points from the first candidate position set in each valid position point pair; divide the acquired peak amplitude by the maximum value among the peak amplitudes to obtain a first normalized amplitude sequence; acquire the peak amplitude of position points from the second candidate position set in each valid position point pair; divide the acquired peak amplitude by the maximum value among the peak amplitudes to obtain a second normalized amplitude sequence; determine the amplitude ratio sequence based on the second normalized amplitude sequence and the first normalized amplitude sequence; sample the calibration curve at equal intervals according to the length of the amplitude ratio sequence to generate a discrete calibration point set; generate a deviation curve based on the deviation between the amplitude ratio sequence and each calibration point in the discrete calibration point set; and use the calibration point corresponding to the minimum value point in the deviation curve as the matching result.
[0125] It should be noted that the above embodiments of the apparatus are only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.
[0126] This application also discloses an electronic device. (See reference...) Figure 3 , Figure 3 This is a schematic diagram of the structure of an electronic device disclosed in an embodiment of this application. The electronic device 300 may include: at least one processor 301, at least one network interface 304, a user interface 303, a memory 305, and at least one communication bus 302.
[0127] The communication bus 302 is used to enable communication between these components.
[0128] The user interface 303 may include a display interface and a camera interface. Optionally, the user interface 303 may also include a standard wired interface and a wireless interface.
[0129] The network interface 304 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface).
[0130] The processor 301 may include one or more processing cores. The processor 301 connects to various parts of the server using various interfaces and lines, and performs various server functions and processes data by running or executing instructions, programs, code sets, or instruction sets stored in the memory 305, and by calling data stored in the memory 305. Optionally, the processor 301 may be implemented using at least one hardware form of Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array (PLA). The processor 301 may integrate one or a combination of several of the following: Central Processing Unit (CPU), Graphics Processing Unit (GPU), and modem. The CPU primarily handles the operating system, user interface graphics, and applications; the GPU is responsible for rendering and drawing the content required for display; and the modem handles wireless communication. It is understood that the modem may also not be integrated into the processor 301 and may be implemented as a separate chip.
[0131] The memory 305 may include random access memory (RAM) or read-only memory. Optionally, the memory 305 may include a non-transitory computer-readable storage medium. The memory 305 may be used to store instructions, programs, code, code sets, or instruction sets. The memory 305 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the above-described method embodiments, etc.; the data storage area may store data involved in the above-described method embodiments, etc. Optionally, the memory 305 may also be at least one storage device located remotely from the aforementioned processor 301. (Refer to...) Figure 3 The memory 305, which serves as a computer storage medium, may include an operating system, a network communication module, a user interface module, and an application program for a conductor position identification method for an electromagnetic cruise system.
[0132] exist Figure 3In the illustrated electronic device 300, the user interface 303 is mainly used to provide an input interface for the user and acquire user input data; while the processor 301 can be used to call an application program stored in the memory 305 for a wire position identification method of an electromagnetic cruise system. When executed by one or more processors 301, the electronic device 300 performs one or more methods as described in the above embodiments. It should be noted that, for the foregoing method embodiments, for the sake of simplicity, they are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, because according to this application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.
[0133] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
[0134] In the various embodiments provided in this application, it should be understood that the disclosed apparatus can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some service interface; the indirect coupling or communication connection between apparatuses or units may be electrical or other forms.
[0135] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0136] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0137] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage device (CMD). Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned memory includes various media capable of storing program code, such as USB flash drives, portable hard drives, magnetic disks, or optical disks.
[0138] The above are merely exemplary embodiments of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. Other embodiments of this disclosure will be readily apparent to those skilled in the art upon consideration of the specification and practical disclosure.
[0139] This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described in this disclosure. The specification and embodiments are to be considered exemplary only.
Claims
1. A method for identifying the position of a conductor in an electromagnetic cruise system, characterized in that, include: Acquire the original electromagnetic signal of the target coil in the electromagnetic cruise system, and set up a first array and a second array for alternating storage of the original electromagnetic signal; A preset number of raw electromagnetic signals are stored in the first array; After the data storage in the first array is completed, the storage address is switched to the second array for data storage, and the data of the preset end segment in the first array is extracted and concatenated with the data of the preset start segment in the second array to obtain the first concatenated data; After the data storage to the second array is completed, the storage address is switched back to the first array for data storage, and the data of the preset end segment in the second array is extracted and concatenated with the data of the preset start segment in the first array to obtain the second concatenated data; Fourier transform and Kalman filtering are performed on the first spliced data and the second spliced data to obtain the first filtering result and the second filtering result; The position of the conductor in the electromagnetic cruise system is determined based on the first filtering result and the second filtering result.
2. The conductor position identification method for the electromagnetic cruise system according to claim 1, characterized in that, The step of extracting data from the preset end segment of the first array and concatenating it with data from the preset start segment of the second array to obtain the first concatenated data includes: The excitation frequency and sampling frequency of the electromagnetic cruise system are obtained, and the target data length is determined based on the ratio of the excitation frequency to the sampling frequency. The preset proportion of the target data length is determined as the first data length of the preset end segment, and the data of the first data length is extracted from the end of the first array as the data of the preset end segment; Subtract the first data length from the target data length to obtain the second data length of the preset starting segment, and extract the data of the second data length from the beginning position of the second array as the data of the preset starting segment; The data of the preset end segment and the data of the preset start segment are arranged sequentially according to the time sequence to generate the first spliced data.
3. The method for identifying the conductor position in an electromagnetic cruise system according to claim 2, characterized in that, Determining the target data length based on the ratio of the conductor excitation frequency to the sampling frequency includes: Calculate the ratio of the sampling frequency to the excitation frequency of the conductor to obtain the number of sampling points per cycle; The product of the number of sampling points per cycle and the preset number of cycles is used as the first reference length; The noise frequency in the original electromagnetic signal is detected, the minimum data processing length is determined based on the noise frequency, and the minimum data processing length is used as the second reference length. The minimum length value that is greater than the first reference length and the second reference length is determined as the target data length.
4. The method for identifying the conductor position in an electromagnetic cruise system according to claim 1, characterized in that, Determining the position of the conductor in the electromagnetic cruise system based on the first filtering result and the second filtering result includes: Peak detection is performed on the first filtering result and the second filtering result respectively to obtain a first set of peak points and a second set of peak points; Based on the amplitude difference and spacing between adjacent peak points in the first peak point set, abnormal peak points are removed to obtain a first candidate location set. Based on the amplitude difference and spacing between adjacent peak points in the second peak point set, abnormal peak points are removed to obtain a second candidate location set. Pair the location points in the first candidate location set with the location points in the second candidate location set, and filter the valid location point pairs according to the spatial distance threshold; The peak amplitude of the effective position point pairs is normalized, the amplitude ratio of each pair of position points is calculated, and it is matched with a preset calibration curve. The valid position point pairs are weighted according to the matching results, and the center position of the position point pair with the largest weight value is selected as the traverse position.
5. The method for identifying the conductor position in an electromagnetic cruise system according to claim 4, characterized in that, The step of pairing position points in the first candidate position set with position points in the second candidate position set and filtering valid position point pairs based on a spatial distance threshold includes: The spatial distance threshold is determined based on the installation spacing between the two sensors in the electromagnetic cruise system. The first candidate location set is traversed using a sliding window method. For each location point within the window, a pair of location points in the second candidate location set whose distance between location points is less than the spatial distance threshold is searched. If the number of searched location point pairs is a single, then the searched location point pair is considered a valid location point pair; If there are multiple pairs of searched locations, the phase difference between each pair is calculated, and the pair with the smallest difference between the phase difference and the preset phase difference is taken as the valid pair.
6. The method for identifying the conductor position in an electromagnetic cruise system according to claim 4, characterized in that, The process of normalizing the peak amplitude of the effective position point pairs, calculating the amplitude ratio of each pair of position points, and matching it with a preset calibration curve includes: Obtain the peak amplitude of the position points from the first candidate position set in each valid position point pair, and divide the obtained peak amplitude by the maximum value among the peak amplitudes to obtain the first normalized amplitude sequence; Obtain the peak amplitude of the position points from the second candidate position set in each valid position point pair, and divide the obtained peak amplitude by the maximum value among the peak amplitudes to obtain the second normalized amplitude sequence; Based on the second normalized amplitude sequence and the first normalized amplitude sequence, an amplitude ratio sequence is determined, and the calibration curve is sampled at equal intervals according to the length of the amplitude ratio sequence to generate a discrete calibration point set; Based on the deviation between the amplitude ratio sequence and each calibration point in the discrete calibration point set, a deviation curve is generated, and the calibration point corresponding to the minimum point in the deviation curve is used as the matching result.
7. The method for identifying the conductor position in an electromagnetic cruise system according to claim 1, characterized in that, The step of storing a preset number of raw electromagnetic signals into the first array includes: Set a threshold detection window, and iterate through the original electromagnetic signal based on the threshold detection window to detect the initial amplitude of the original electromagnetic signal; When the initial amplitude of the original electromagnetic signal is detected to exceed a preset threshold, the starting position of the threshold detection window is marked as the effective signal start point; The storage start address of the first array is determined based on the effective signal start point, and the preset number of original electromagnetic signals are stored sequentially into the first array starting from the effective signal start point.
8. A conductor position identification system for an electromagnetic cruise system, characterized in that, The system includes: The signal acquisition module is used to acquire the original electromagnetic signal of the target coil in the electromagnetic cruise system, and to set up a first array and a second array for alternating storage of the original electromagnetic signal; The data splicing module is used to store a preset number of raw electromagnetic signals into the first array; after the data storage in the first array is completed, the storage address is switched to the second array for data storage, and the data of the preset end segment in the first array is extracted and spliced with the data of the preset start segment in the second array to obtain the first spliced data; after the data storage in the second array is completed, the storage address is switched back to the first array for data storage, and the data of the preset end segment in the second array is extracted and spliced with the data of the preset start segment in the first array to obtain the second spliced data. The filtering module is used to perform Fourier transform and Kalman filtering on the first spliced data and the second spliced data to obtain the first filtering result and the second filtering result; The conductor position identification module is used to determine the position of the conductor in the electromagnetic cruise system based on the first filtering result and the second filtering result.
9. An electronic device, characterized in that, The device includes a processor, a memory, a user interface, and a network interface. The memory is used to store instructions, the user interface and the network interface are used to communicate with other devices, and the processor is used to execute the instructions stored in the memory to cause the electronic device to perform a conductor position identification method for an electromagnetic cruise system as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores instructions that, when executed, perform a conductor position identification method for an electromagnetic cruise system as described in any one of claims 1-7.