Optical Cable Status Assessment and Early Warning System Based on Multi-Source Fiber Optic Sensing and OTDR Integration
The optical cable condition assessment system, which integrates multi-source optical fiber sensing and OTDR, solves the problem of high false alarm rate and missed alarm rate of optical cable condition monitoring system in noisy environments, and realizes real-time, accurate assessment and efficient handling of optical cable condition.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANDONG BOAN INTELLIGENT TECH CO LTD
- Filing Date
- 2026-05-26
- Publication Date
- 2026-07-17
Smart Images

Figure CN122268471B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of robust artificial intelligence technology and relates to an intelligent sensing system, specifically an optical cable condition assessment and early warning system based on the fusion of multi-source optical fiber sensing and OTDR. Background Technology
[0002] As the main carrier medium for critical infrastructure such as communication trunk lines, power lines, and communication accompanying oil and gas pipelines, optical cables face a variety of potential sources of failure during long-term service, including third-party mechanical damage, soil settlement, temperature drift, connector contamination, and macro and micro bends. Real-time perception and early warning of the status along the line have always been core requirements in operation and maintenance engineering practices.
[0003] In the field of distributed fiber optic sensing, optical time-domain reflectometry (OTDR) based on Rayleigh backscattering has developed into a relatively mature engineering system after years of development. Early intensity-based OTDR relied solely on single-pulse injection and echo amplitude sampling, with spatial resolution and dynamic range rigidly constrained by the upper limit of laser peak power. To overcome this constraint, the industry has successively proposed coding schemes such as Simplex-coded OTDR based on complementary accumulation technology, correlation-based OTDR based on Golay complementary code pairs, and coherent OTDR based on linear frequency modulated pulses. These schemes significantly enhance weak echoes from the noise floor through coding gain. Regarding sensing nodes, point-based transducer technologies such as strain and temperature sensing around fiber Bragg gratings and piezoelectric vibration sensing have also achieved large-scale application. Some systems further integrate multiple types of transducers into smart markers or composite monitoring pods distributed along the line to obtain multi-dimensional characterization of the line status.
[0004] However, existing solutions generally suffer from the following shortcomings. First, Simplex coding and Golay coding have different sensitivities to noise environments. The former, under impulsive interference, suffers from the global diffusion effect of the inversion matrix, leading to contamination of the entire trajectory. The latter, under stable conditions, has lower coding gain than the former. Existing systems typically employ a single coding method, lacking an adaptive switching mechanism tailored to the actual noise situation of the receiving link. Second, even with multi-code capability, coefficient loading and decoding operations during code switching are often performed sequentially, resulting in dead time on the order of seconds, severely limiting refresh rate and real-time performance. Third, the distributed optical temporal reflection trajectory along the line and the multi-source sensor data at various points are isolated in terms of time reference, spatial anchor, and feature semantics. The lack of a unified time-base synchronization and fusion evaluation framework makes it difficult to corroborate the "linear" attenuation anomalies with the mechanical vibration, temperature, and strain disturbances at the "points," making it difficult to simultaneously reduce false alarm and missed alarm rates. Summary of the Invention
[0005] The main objective of this invention is to provide a fiber optic cable status assessment and early warning system based on the fusion of multi-source fiber optic sensing and OTDR, which enables distributed attenuation monitoring and point-based multi-source sensing to be strictly aligned in both time and space. Adaptive code switching maintains a robust echo signal-to-noise ratio in a variable noise environment, and a dual buffering mechanism eliminates the dead time of code switching to ensure real-time updates. This effectively reduces the false alarm rate and missed alarm rate, significantly improves the efficiency of handling abnormalities in fiber optic cable lines, and has high engineering practical value.
[0006] To address the aforementioned technical problems, this invention provides a fiber optic cable condition assessment and early warning system based on the fusion of multi-source fiber optic sensing and OTDR. The system comprises a multi-source fiber optic sensing unit, an optical transceiver, and a monitoring center. The multi-source fiber optic sensing unit includes multiple sensing nodes laid along the fiber optic cable. Each sensing node collects strain, vibration, and temperature signals at a unified time base and uploads them to the optical transceiver via a convergence link. The optical transceiver includes a narrow-linewidth laser, an injection optical on / off module, a programmable pulse generator module, a Rayleigh backscattered light receiving link, an analog-to-digital converter module, and an FPGA. The system operates cyclically according to an assessment cycle, which consists of one coded measurement frame and one multi-source fusion segment. The coded measurement frame consists of several detection sub-cycles containing pulse emission windows, echo reception windows, and pulse intervals. Within the pulse interval, the FPGA calculates the peak-to-noise ratio (PNR) of the receiving link based on the output of the Rayleigh backscattered light receiving link, and then calculates the PNR based on the previous PNR. The frame-level peak-to-noise ratio and frame-level noise floor energy of the encoded measurement frame adaptively select either the Simplex or Golay code pattern and output the code pattern identifier. The Simplex inversion matrix elements or Golay tap coefficient set required for the next encoded measurement frame are pre-loaded in the pulse interval through a double-buffered register group. The role of the register group is reversed by the frame synchronization signal. The programmable pulse generation module responds to the code pattern identifier and drives the injection optical on / off module to generate a probe pulse sequence and inject it into the optical cable. The FPGA decodes the echo data sequence collected by the analog-to-digital conversion module according to the current code pattern and outputs the decoded backscatter trajectory along the optical cable mileage. The decoded backscatter trajectory, strain signal, vibration signal, and temperature signal are aligned with a unified time base to form a multi-source state vector and mapped to the operational health status by the state assessment model. The monitoring center maps the operational health status to the warning level interval according to the multi-level warning level threshold and presents it visually.
[0007] Furthermore, each sensing node is equipped with a strain sensing subunit, a vibration sensing subunit, and a temperature sensing subunit. The strain sensing subunit, vibration sensing subunit, and temperature sensing subunit are driven by a unified time base to synchronously collect the strain signal, vibration signal, and temperature signal of the optical cable at the mileage location of the sensing node; the aggregation link is set between the sensing node and the optical transceiver.
[0008] Furthermore, the injection optical switching module is composed of any one of an acousto-optic modulator, an electro-optic modulator, and an optical switch. The injection optical switching module is set between the narrow linewidth laser and the optical cable. The narrow linewidth laser maintains steady-state illumination during system operation. The Simplex matrix library contains multiple Simplex matrices with different side lengths. Each Simplex matrix has a corresponding Simplex inversion matrix. The Golay complementary code pair includes the first Golay bipolar mother code and the second Golay bipolar mother code. Each bipolar mother code is bit-split to obtain positive non-negative sub-codes and negative non-negative sub-codes. The positive non-negative sub-code is obtained by keeping the bits with a value of 1 as 1 and the bits with a value of -1 as zero in the bipolar mother code. The negative non-negative sub-code is obtained by keeping the bits with a value of -1 as 1 and the bits with a value of 1 as zero in the bipolar mother code.
[0009] Furthermore, a noise feature extraction unit is built into the FPGA. In the pulse interval of each detection sub-cycle, the noise feature extraction unit performs squaring and sliding accumulation operations on the sampling sequence obtained by the analog-to-digital conversion module from the Rayleigh backscatter light receiving link output to obtain a sliding energy sequence. The maximum value in the sliding energy sequence is taken as the peak noise energy of the receiving link in this detection sub-cycle. The sliding energy sequence is sorted in ascending order of value and the arithmetic mean of the samples below the preset quantile is taken as the noise floor energy of the receiving link in this detection sub-cycle. The ratio of the peak noise energy of the receiving link to the noise floor energy of the receiving link is taken as the peak-to-noise floor energy ratio of this detection sub-cycle.
[0010] Furthermore, a code pattern decision unit is built into the FPGA. During the pulse interval before the start of each encoded measurement frame, the code pattern decision unit reads the peak-to-noise ratio (PNR) of all probe sub-cycles in the previous encoded measurement frame and uses the maximum value as the frame-level PNR. When the frame-level PNR is greater than a preset PNR threshold, the code pattern decision unit determines that the current receiving link is in an impulse noise environment and outputs a Golay code pattern identifier to the programmable pulse generation module and the double-buffered coefficient loading unit; otherwise, the code pattern decision unit determines that the current receiving link is in a stationary noise environment. For the acoustic environment, the receiver link noise floor energy corresponding to all probe sub-cycles in the previous coded measurement frame is read and the arithmetic average is taken to obtain the frame-level noise floor energy. The frame-level noise floor energy is compared with the preset multi-level noise floor energy threshold level by level. According to the noise floor interval that the frame-level noise floor energy falls into, a Simplex matrix with the corresponding side length is selected from the Simplex matrix library. The Simplex code pattern identifier and the side length information of the selected Simplex matrix are output to the programmable pulse generation module and the double buffer coefficient loading unit. When the system starts for the first time, the code pattern decision unit uses the preset default code pattern as the code pattern of the first coded measurement frame.
[0011] Furthermore, a double-buffered coefficient loading unit is built into the FPGA. Register group A and register group B of the double-buffered coefficient loading unit constitute a double-buffered register group, which respectively assumes the current role and the shadow role at each time. The register group assuming the current role is connected to the decoding operation data path for decoding operation reading of the current encoded measurement frame. The register group assuming the shadow role is connected to the on-chip ROM reading path of the FPGA for preloading the inversion matrix elements or tap coefficient set of the next encoded measurement frame. In the same pulse interval after the code pattern decision unit outputs the code pattern identifier, the double-buffered coefficient loading unit retrieves the Simplex inversion matrix elements required for the next encoded measurement frame or the time reversal of the first Golay bipolar mother code and the time reversal of the second Golay bipolar mother code as the tap coefficient set from the on-chip ROM and writes them to the register group assuming the shadow role. At the beginning of the pulse transmission window of the first probe sub-cycle of the next encoded measurement frame, the roles of register group A and register group B are triggered by the frame synchronization signal. The register group that has completed the preloading assumes the current role, and the register group that originally assumed the current role assumes the shadow role and waits for the next preloading.
[0012] Furthermore, the FPGA incorporates a Simplex inversion decoding unit. When the programmable pulse generation module receives the Simplex code pattern identifier and the side length information of the selected Simplex matrix, it sets the number of probe sub-cycles in the encoded measurement frame to be equal to the side length of the selected Simplex matrix. It then sequentially allocates each row of the selected Simplex matrix to each probe sub-cycle in chronological order. Within each probe sub-cycle, bits with a value of 1 in the allocated Simplex matrix row are mapped to sub-pulse transmission, and bits with a value of 0 are mapped to sub-pulse intervals. This drives the injection optical on / off module to generate the corresponding probe pulse sequence and inject it into the optical cable. The analog-to-digital conversion module samples the corresponding echo data sequence at a uniform sampling interval within the corresponding echo reception window. The Simplex inversion decoding unit reads the Simplex code pattern identifier corresponding to the selected Simplex matrix from the register group that performs the current function. The ex inversion matrix is used to align all echo data sequences obtained from the probe sub-cycles according to the mileage sampling points to form an echo data matrix. A matrix multiplication operation is then performed between the Simplex inversion matrix and the echo data matrix to obtain the decoding matrix. Each row of the decoding matrix corresponds to the single-pulse equivalent response sequence of one sub-pulse position arranged in chronological order in the probe pulse sequence. The Simplex inversion decoding unit calculates the corresponding mileage sampling point offset based on the time offset of each corresponding sub-pulse position relative to the start time of the pulse transmission window. Each row of the decoding matrix is then shifted backward along the mileage sampling point direction by the corresponding mileage sampling point offset, aligning the starting mileage reference of all single-pulse equivalent response sequences to the same mileage reference point. The Simplex inversion decoding unit then performs an arithmetic mean on all aligned single-pulse equivalent response sequences at the same mileage sampling point position and outputs the decoded backscatter trajectory of this encoded measurement frame along the optical cable mileage.
[0013] Furthermore, a Golay matched filter unit is built into the FPGA; when the programmable pulse generation module receives the Golay code pattern identifier, it sets the number of probe sub-cycles of the encoded measurement frame to 4. Within the 4 probe sub-cycles, it sequentially injects the positive and negative sub-codes of the first Golay bipolar mother code and the positive and negative sub-codes of the second Golay bipolar mother code into the optical fiber to drive the injection optical on / off module to generate the first positive probe pulse sequence, the first negative probe pulse sequence, the second positive probe pulse sequence, and the second negative probe pulse sequence. The analog-to-digital conversion module samples the first positive echo data sequence, the first negative echo data sequence, the second positive echo data sequence, and the second negative echo data sequence within the echo receiving window corresponding to the 4 probe sub-cycles, respectively. The Golay matched filter unit uses the first positive echo data sequence and the first negative echo data sequence at the same mileage sampling point position. The first bipolar equivalent echo sequence is obtained by subtracting the second positive echo sequence from the second negative echo sequence. The second bipolar equivalent echo sequence is obtained by subtracting the second positive echo sequence from the second negative echo sequence. The Golay matched filter unit reads the time reversal of the first and second Golay bipolar mother codes from the register group that is currently in charge of the current role and loads them into the first and second tap coefficient sets, respectively. The first bipolar equivalent echo sequence is output as the first intermediate sequence through the first FIR filter branch, and the second bipolar equivalent echo sequence is output as the second intermediate sequence through the second FIR filter branch. The Golay matched filter unit performs a positional arithmetic summation on the first and second intermediate sequences at the same mileage sampling point and outputs the decoded backscatter trajectory of the encoded measurement frame along the optical cable mileage.
[0014] Furthermore, the Golay matched filtering unit is configured to perform squaring and fixed-window-length sliding accumulation operations on the first positive echo data sequence, the first negative echo data sequence, the second positive echo data sequence, and the second negative echo data sequence to obtain four intra-frame sliding energy sequences. For each intra-frame sliding energy sequence, the corresponding local peak-to-noise ratio is calculated according to the calculation method of the received link noise floor energy and the received link noise peak energy as defined in claim 4. The maximum value among the four local peak-to-noise ratios is used as the intra-frame contamination index of this coded measurement frame. When the intra-frame contamination index is greater than the preset intra-frame contamination threshold, this coded measurement frame is marked as impact contamination and is re-measured by the next coded measurement frame.
[0015] Furthermore, for each mileage location along the optical cable, the optical transceiver extracts the local attenuation mutation, reflection event amplitude, and backscatter trajectory slope change value from the decoded backscatter trajectory; extracts the strain peak value and strain gradient from the strain signal; extracts the vibration energy and vibration main frequency band characteristics from the vibration signal; and extracts the temperature rise rate and temperature gradient from the temperature signal. The extracted features together constitute a multi-source state vector for this mileage location. The multi-source state vector is input into a pre-set state assessment model in the monitoring center, and the state assessment model outputs the operational health status of this mileage location. The monitoring center maps the operational health status to the corresponding early warning level interval according to the pre-set multi-level early warning level thresholds, and visualizes the mileage location and the corresponding early warning level interval.
[0016] The optical cable condition assessment and early warning system based on the fusion of multi-source optical fiber sensing and OTDR of the present invention has the following beneficial effects: This invention constructs a multi-source collaborative evaluation system that integrates linear measurement and point sensing by deeply fusing strain, vibration, and temperature signals synchronously collected by sensing nodes laid along optical cables with distributed optical time-domain reflectometry based on Rayleigh backscattering under a unified time base. This system enables two originally isolated information sources to be strictly aligned in both spatial and temporal dimensions, thereby significantly reducing the false alarm rate of a single information source while greatly reducing the risk of missed alarms in critical events.
[0017] In each pulse interval of the coded measurement frame, the present invention adaptively switches between Simplex and Golay coding patterns based on the receiver link noise statistics of the previous coded measurement frame. The former provides higher coding gain in a stable noise environment, while the latter strictly limits impulse contamination to a single frame range in an impulse noise environment by virtue of the zero sidelobe characteristics of complementary code pairs. The two complement each other, enabling the system to maintain a robust echo signal-to-noise ratio under varying electromagnetic and mechanical disturbance conditions.
[0018] The dual-buffer register group introduced in this invention preloads the decoding coefficients required for the next encoding measurement frame into the register group that plays the shadow role. The role of the register group is switched by the frame synchronization signal, realizing the parallel pipeline of decoding operation and coefficient loading, completely eliminating the dead time in the code pattern switching process, and ensuring both refresh rate and real-time performance.
[0019] The multi-source state vectors provided by this invention are mapped to operational health status through a state assessment model and visualized by mapping to early warning level intervals according to multi-level early warning thresholds. This allows maintenance personnel to intuitively judge the location, nature, and severity of anomalies along the line, significantly improving the handling efficiency of optical cable lines in various fault scenarios such as third-party damage, slow subsidence, and abnormal temperature. It has high engineering practical value and promotion prospects. Attached Figure Description
[0020] Figure 1 A schematic diagram of the overall deployment of the optical cable condition assessment and early warning system based on the fusion of multi-source optical fiber sensing and OTDR provided in an embodiment of the present invention; Figure 2 A schematic diagram of the waveforms of the two bipolar mother codes of the selected Golay complementary code pair along the bit order, provided for an embodiment of the present invention. Figure 3 A schematic diagram illustrating the value characteristics of the selected Golay complementary code pair in the autocorrelation and complementary summation domains provided for embodiments of the present invention. Figure 4 The energy sequence within a window obtained by performing a square operation and a sliding accumulation operation with a fixed window length on the sampled sequence within the pulse interval provided in this embodiment of the invention. And a schematic diagram of the peak energy of the receiver link noise and the floor energy of the receiver link noise extracted therefrom. Detailed Implementation
[0021] A fiber optic cable condition assessment and early warning system based on the fusion of multi-source fiber optic sensing and OTDR includes a multi-source fiber optic sensing unit, an optical transceiver, and a monitoring center. The multi-source fiber optic sensing unit comprises multiple sensing nodes laid along the fiber optic cable. Each sensing node collects strain, vibration, and temperature signals at a unified time base and uploads them to the optical transceiver via a convergence link. The optical transceiver includes a narrow-linewidth laser, an injection optical on / off module, a programmable pulse generator module, a Rayleigh backscattered light receiving link, an analog-to-digital converter module, and an FPGA. The system operates cyclically according to an assessment cycle, which consists of one coded measurement frame and one multi-source fusion segment. The coded measurement frame consists of several probe sub-cycles containing pulse transmission windows, echo reception windows, and pulse intervals. Within the pulse interval, the FPGA calculates the peak-to-noise ratio (PNR) of the receiving link based on the Rayleigh backscattered light receiving link output, using the frame level of the previous coded measurement frame. The peak-to-noise ratio and frame-level noise floor energy adaptively select between Simplex and Golay code patterns and output a code pattern identifier. A double-buffered register group pre-loads the Simplex inversion matrix elements or Golay tap coefficient set required for the next encoded measurement frame within the pulse interval. The register group role reversal is triggered by the frame synchronization signal. The programmable pulse generation module responds to the code pattern identifier and drives the injection optical on / off module to generate a probe pulse sequence that is injected into the optical cable. The FPGA decodes the echo data sequence acquired by the analog-to-digital conversion module according to the current code pattern and outputs the decoded backscatter trajectory along the optical cable mileage. The decoded backscatter trajectory, strain signal, vibration signal, and temperature signal are aligned with a unified time base to form a multi-source state vector, which is then mapped to operational health status by a state assessment model. The monitoring center visualizes the operational health status by mapping it to the warning level interval according to multi-level warning thresholds.
[0022] like Figure 1As shown, the types of optical cables applicable to this system are not limited to a single scenario, covering various engineering practices such as long-distance optical cables for communication trunk lines, optical fiber composite overhead ground wires on power lines, and accompanying communication optical cables for oil and gas pipelines. The typical length of the continuous optical fiber segment being monitored is 50 to 150 kilometers; each optical cable bundle usually contains 16 to 32 independent core wires, of which one is reserved as a dedicated sensing core; if the total length of the line exceeds 150 kilometers, an optical transceiver can be installed every 100 kilometers along the line to provide relay coverage.
[0023] The multi-source fiber optic sensing unit consists of several sensing nodes laid along the optical cable. The spacing between adjacent sensing nodes ranges from 200 meters to 1000 meters, with denser spacing in complex environments and sparse spacing in stable buried sections. Each sensing node can be a smart marker buried on the ground or a composite monitoring pod suspended on an OPGW tower. Its power supply method depends on the environment. In ground-laid scenarios, a 6-watt polycrystalline silicon photovoltaic panel is used in conjunction with a 24-Ah lithium iron phosphate battery. In OPGW scenarios, power is drawn from the phase conductor through induction. The power supply scheme needs to be matched and selected according to the electromagnetic and solar radiation environment of the optical cable.
[0024] Each sensing node houses three types of transducers within a single waterproof enclosure: a fiber Bragg grating strain sensor coupled to the outer surface of the optical cable sheath via epoxy bonding, which transmits the micro-strain of the optical fiber to the grating region through a transition sleeve, converting the strain into a shift in the wavelength of the reflection peak; a piezoelectric vibration sensor with a bandwidth of 1 Hz to 1 kHz, which is clamped and fixed to the optical cable sheath, converting the optical cable vibration into a voltage signal; and a platinum resistance or negative temperature coefficient thermistor temperature sensor with a range of -40°C to +85°C and a resolution of 0.1°C. The analog outputs of the three transducers are amplified with low noise and filtered against anti-aliasing by their respective signal conditioning circuits before being sent to a low-power ARM Cortex-M4 core microcontroller within the node, which uniformly controls the sampling timing. By default, the sampling rate is 1 kHz for the vibration channel, 100 Hz for the strain channel, and 1 Hz for the temperature channel.
[0025] A unified time base refers to the synchronization of all sensor nodes along the entire sensor chain to the same reference clock source, with the time base deviation between the nodes at both ends of the longest optical cable segment strictly controlled within 1 millisecond. This time base can be implemented in any of the following ways: First, each sensor node deploys a low-power Global Navigation Satellite System (GNSS) receiver module (e.g., u-blox MAX-M8), using a local 32 MHz crystal oscillator with phase-locked calibration based on the satellite time synchronization second pulse, achieving a typical alignment accuracy of ±100 nanoseconds. Second, in areas without satellite signal coverage, such as tunnels, deep valleys, or dense forests, IEEE 1588 Precision Time Protocol (PTC) messages are sent via a convergence link to achieve microsecond-level soft synchronization. Third, an optical transceiver broadcasts a synchronization optical beacon once along the sensor fiber core to each sensor node at a preset period. The sensor nodes then use the beacon arrival time to calculate the optical path propagation delay to correct their local clocks. For standard single-mode fiber, this propagation delay is approximately... microseconds per kilometer, which can be expressed by the formula The calculation yielded, where The one-way propagation delay (in seconds) The distance (in meters) between the sensor node and the optical transceiver. The refractive index of the single-mode fiber group is taken as 1.46. The speed of light in a vacuum (take) (meters per second). The synchronization accuracy of the third method is typically ±10 microseconds, which is sufficient to support joint analysis with Rayleigh backscattered echoes at sub-millisecond resolution.
[0026] The aggregation link's function is to transmit strain, vibration, and temperature data collected by all sensor nodes back to the optical transceiver. Considering deployment costs, link reliability, and differences in geographical environment, there are several options for implementing the aggregation link. First, a multi-hop mesh network based on the 433 MHz LoRa frequency band transmits compressed feature vectors at a frequency of one frame per second, with a single-hop budget of no more than 250 milliseconds, suitable for remote scenarios without available cable infrastructure. Second, an RS-485 serial bus, with eight sensor nodes grouped together on the same bus, at a line rate of 115.2 kilobits per second, sufficient to handle real-time uploading of raw vibration waveforms in short-distance scenarios not exceeding 5 kilometers. Third, a passive optical network, operating at a line rate of 1.25 gigabits per second, sharing a spare fiber core in the same optical cable bundle with the sensor fiber core.
[0027] The third option is most cost-effective in engineering scenarios where there is a surplus of spare fiber cores in the optical cable bundle (a typical OPGW contains 12 to 24 cores, but the actual usage by the service is usually less than half of them): the sensing chain and the aggregation chain can run in parallel in the same fiber core with the help of wavelength division multiplexing. The sensing detection pulse occupies the 1550 nm C-band, and the passive optical network data occupies the 1310 nm O-band. The two bands are separated at the front end of the optical transceiver by a thin-film wavelength division multiplexing coupler with an isolation of more than 30 dB.
[0028] The optical transceiver is the active core of the entire system. In one implementation, a narrow-linewidth laser with a center wavelength of 1550.12 nm and distributed feedback semiconductor laser is used, with a linewidth of less than 100 kHz and an output power of 13 dBmW (equivalent to 20 mW). A 100 kHz linewidth corresponds to a laser coherence length of approximately 1 km, far exceeding the tens to hundreds of meters of pulse length commonly used in coded detection. This ensures that the scattered fields generated by each sub-pulse within each pulse can be coherently superimposed, enabling the backend Simplex inversion or Golay matched filtering operations to obtain complete coherent gain. In a simplified configuration where coherent gain is not required and only intensity-domain Rayleigh OTDR is needed, the narrow-linewidth distributed feedback semiconductor laser can be replaced with a multi-longitudinal-mode Fabry-Perot laser in the same wavelength band to reduce material costs.
[0029] The injection optical switching module is positioned between the narrow-linewidth laser and the optical cable. Its function is to select the continuous light wave output by the laser into a discrete probe pulse sequence according to the time pattern given by the programmable pulse generation module. Specifically, it can be implemented in one of the following three ways: First, an acousto-optic modulator with a driving frequency of 200 MHz, an extinction ratio of over 50 dB, and a pulse rise and fall time of approximately 10 nanoseconds, which is insensitive to polarization. Second, a Mach-Zehnder electro-optic modulator with a pulse rise and fall time of less than 1 nanosecond, but a low extinction ratio, typically 25 to 30 dB, and is sensitive to polarization; in long-distance optical cables with severe polarization disturbances, a polarization-maintaining isolation device needs to be connected in series at the front end. Third, a semiconductor optical amplifier that also serves as a gating device, simultaneously amplifying the pulse during gating, at the cost of a quantitative level of amplified spontaneous emission noise, which is sacrificed for the peak power of a single injected pulse. These three implementations represent a trade-off between multiple objectives, including extinction ratio, rise and fall time, polarization sensitivity, and material cost.
[0030] The programmable pulse generation module uses a high-speed shift register inside the FPGA as its core, loading the time pattern corresponding to the current code pattern—if the Simplex code pattern is selected, it loads one row of the Simplex matrix allocated to the current probe sub-cycle; if the Golay code pattern is selected, it loads one of the four non-negative sub-codes obtained by bit splitting the Golay complementary code pair. The clock frequency of the shift register is between 100 MHz and 1 GHz, with the specific value corresponding to the required sub-pulse width and spatial resolution, which are communicated via... Contact, among which The spatial resolution (meters) along the optical cable. The group velocity of light in a single-mode fiber (for the group refractive index) Standard single-mode fiber, (meters per nanosecond) This represents the time width of the sub-pulse (nanoseconds), with the denominator 2 derived from the two-way round trip of the OTDR. Taking a 100 MHz clock frequency as an example... Nanoseconds, substituting into the calculation, yields Meters; increase the clock frequency to 200 MHz, Nanoseconds, spatial resolution improved to The output of the shift register is driven by a low-voltage differential signal line terminated with 50 ohms to the gate control input of the optical on / off module to ensure that the pulse edge is not reflected or attenuated.
[0031] The Rayleigh backscattered light receiving link completes the capture of weak echoes. A typical implementation includes: an optical circulator (located between the injection optical switching module and the optical cable, forwarding the outgoing pulse to the optical cable and introducing the Rayleigh scattered light into the receiving branch), a 1-nanometer bandwidth narrowband optical filter (aligned to the laser wavelength to suppress out-of-band amplification spontaneous emission noise and ambient stray light from the erbium-doped fiber amplifier), an erbium-doped fiber amplifier (preamplifier) with a gain of 20 dB and a noise figure of 4 dB, and a balanced photodetector with a transimpedance bandwidth of 200 MHz.
[0032] The output of the balanced photodetector is digitized by an analog-to-digital converter (ADC) at a resolution of 12 to 14 bits and a sampling rate matching the FPGA processing clock (500 Mbps for a 0.5-meter spatial resolution). The conversion result is sent to the FPGA via a JESD204B high-speed serial interface or a low-voltage differential signal parallel interface. The FPGA used here can be a mid-range device, typically a Xilinx Kintex-7 series XC7K325T or an Intel Cyclone V GX series. The FPGA handles all digital processing tasks, including timing control, code storage, simplex inversion and Golay matched filtering, noise statistics, adaptive code decision-making, and double-buffered coefficient loading. Its resource consumption typically does not exceed 60% of the total resources of these mid-range devices.
[0033] The monitoring center receives decoded backscatter trajectories and aligned multi-source feature vectors from the optical transceiver via a standard Ethernet link, and feeds this data into a pre-defined state assessment model. In one implementation, the state assessment model is an XGBoost model based on gradient boosting decision trees, suitable for the initial stage of system deployment. In another implementation, the state assessment model is a 1D convolutional neural network (containing 4 to 8 convolutional layers) that convolves along the mileage direction, capable of capturing more detailed spatial signatures when labeled samples accumulate to tens of thousands. The two implementations can be switched in stages, with decision trees used as a backup in the initial stage and neural networks used for refinement in the later stage.
[0034] The entire system operates cyclically according to an evaluation cycle: each evaluation cycle consists of two segments, an coded measurement frame and a multi-source fusion segment, connected consecutively. Within the coded measurement frame, the FPGA transmits a sequence of probe pulses to the optical cable and acquires Rayleigh backscattered echoes. Within the multi-source fusion segment, the FPGA continuously shuts down the injected optical on / off module, reads strain, vibration, and temperature signals buffered by the sensor nodes through the convergence link, and aligns them with the decoded backscattered trajectory to generate a multi-source feature vector, which is then reported to the monitoring center. In a typical configuration, the coded measurement frame lasts 0.8 seconds, and the multi-source fusion segment lasts 0.2 seconds, totaling 1 second, providing the monitoring center with a 1 Hz refresh rate. For applications with tighter latency requirements for third-party destructive detection, the overall cycle can be shortened to 0.5 seconds, with the two segments proportionally tightened, increasing the refresh rate to 2 Hz.
[0035] The coded measurement frame consists of several probe sub-cycles connected in series, with the specific number varying depending on the code pattern: when a Simplex matrix with side length N is selected, it consists of N probe sub-cycles (N can be 7, 15, 31, etc.); when a Golay complementary code pair is selected, it consists of 4 probe sub-cycles. Each probe sub-cycle is continuously divided into 3 segments along the time axis: pulse transmission window, echo reception window, and pulse interval.
[0036] The pulse emission window refers to the period during which the injected optical switching module gates and modulates the laser output to form a probe pulse sequence (or a non-negative sub-code sequence for Golay code scenarios). Its duration is determined by the number of bits in the code itself and the width of the unit sub-pulse. For example, with a Simplex matrix at a 100 MHz clock frequency and a side length of 7, the duration of one pulse emission window is approximately 0.07 microseconds. With a 1 GHz clock frequency, a code with a side length of 64, and a preceding synchronization packet, the duration can reach over 0.064 microseconds, and with a guard band, it can reach several microseconds.
[0037] The echo receiving window starts immediately after the pulse transmission window. Its duration must ensure that the last photon emitted by the last sub-pulse at the end of the pulse transmission window completes its round trip to the far end of the optical cable and can still be recorded by the photodetector. The two-way propagation time of light in the optical cable is... ,in For two-way travel time, This refers to the length of the optical cable. Let be the group velocity of light in a single-mode optical fiber. For a 150 km optical cable, substitute... rice, meters per second, Milliseconds; plus a reserved 50-microsecond protection band to deal with the aftereffects of near-end events such as reflections within the circulator and Fresnel reflections from the connector, the echo reception window duration is no less than 1.55 milliseconds.
[0038] The pulse interval is an intentionally reserved idle period during which no probe pulses are transmitted. The receiving link only records ambient thermal noise, shot noise, and power frequency electromagnetic interference and radio frequency interference coupled in by the environment. In a typical configuration, the pulse interval duration is 100 to 200 microseconds, with a lower limit of no less than 10 microseconds. The total duration of the entire probe sub-cycle is between 1.7 and 2.0 milliseconds, which translates to an encoded measurement frame duration of approximately 7 milliseconds (7-element Simplex) to 32 milliseconds (15-element Simplex with guard band). All of these durations fall within the time budget of the 0.8-second encoded measurement frame, leaving sufficient margin for multiple coherent averaging within the same frame.
[0039] As an alternative implementation, the pulse interval can also be placed before the pulse transmission window (i.e., the order becomes pulse interval - pulse transmission window - echo reception window), which mathematically has no impact on the noise statistics themselves. The choice between placing it before or after is driven by hardware details: some photodetectors have a slow recovery tail after experiencing a strong reflection event. In this case, placing the pulse interval after the pulse interval allows the tail to remain within the pulse interval for statistical analysis or filtering; conversely, some preamplifiers have fast settling characteristics, and placing the pulse interval before the pulse interval ensures that the photodetector is in a known steady state when the probe pulse arrives.
[0040] In a multi-channel deployment scenario where one optical transceiver covers multiple optical cables, the encoded measurement frames also need to be distributed in a time-division multiplexing manner among the multiple optical cables via optical switches—MEMS optical switch switching time is typically less than 100 microseconds, and in a typical 32-channel configuration, each optical cable... The duration of the coded measurement frame is determined by a polling scheduler that rotates the frame according to the priority weights set by the operator, ensuring that the effective refresh rate of each optical cable is [missing information]. Hertz divided by equal to approximately Hertz, where 32 is the number of channels in the denominator; for optical cables carrying critical infrastructure, their weight can be increased, at the cost of a corresponding decrease in the refresh rate of other optical cables.
[0041] Upon entering the pulse interval, the FPGA performs two cascaded operations—squaring and sliding accumulation—on the sample stream fed by the analog-to-digital converter. Let the total number of samples within the pulse interval be... Taking a sampling rate of 500 megasamples per second with a pulse interval of 102.4 microseconds as an example, Sample values are collected one by one. Square the result to obtain the instantaneous power sequence. Then, taking length as The rectangular window slides across the sequence to sum, i.e. ,in Indicates from the first Energy within the window, calculated from each sampling point. Indicates the first A digital sample, This represents the number of samples in the sliding window. In a typical configuration, this is taken as... The corresponding window duration is 128 nanoseconds, which is equivalent to a spatial scale of about 13.1 meters along the direction of the optical cable. This scale is on the same order of magnitude as the spatial length covered by the actual equivalent pulse of the code pattern, so that the subsequent statistics can fairly reflect the disturbance of the same length as the real signal event. The selectable range is 32 to 512, and in engineering practice, it is determined by a trade-off between the maximum side length of the selected Simplex matrix and the spatial resolution.
[0042] Obtain the sliding energy sequence Next, the FPGA calculates its maximum value and a set of smaller quantile averages. The maximum value is simple; it is compared in a single pass along the sequence, and recorded as... This serves as the peak energy of the receiver link noise for this probe sub-cycle. The extraction of the noise floor energy is more sophisticated: the entire sequence is sorted on-chip, with values ranked from smallest to largest. The arithmetic mean of the samples is denoted as . ,in This indicates the percentage of quantiles; in engineering practice, it is typically taken as 0.1 or 0.2. This represents the set of sample subscripts located below this quantile. This operation discards the highest-energy impact-contaminated samples and retains the low-energy range representing the stable background for averaging; the quantile mean has a smaller variance in the heavy-tailed distribution and is more robust than the whole sequence mean or median.
[0043] The ratio of the two quantities mentioned above gives the peak-to-noise-base energy ratio for this probe sub-cycle. The ratio is dimensionless and does not drift with the laser output power or the photodetector operating point. It remains close to its original value, therefore It's a fingerprint of the "shape" rather than the "amplitude" of the receive link noise. The FPGA calculates the fingerprint for each probe sub-cycle. and Write to a circular buffer storage area with a size of 512 items and each item being 32 bits, and slide over it according to the boundary of the encoded measurement frame.
[0044] refer to Figure 4 , Figure 4 The horizontal axis is labeled "Sampling point number (W=64 sliding accumulation, total 51200 points)", with values taken from... Extend to The vertical axis is labeled "Energy Inside the Window". (LSB) ), taken from Extend to slightly above this clause The peak of the curve. The main body of the curve consists of the interval between pulses. Each digit sample is squared, and then the sample is divided into groups of length 1. The rectangular window is obtained by sliding and summing over the instantaneous power sequence. Therefore, the ordinate value corresponding to each horizontal coordinate point is the value of the window extended forward with that point as the center. The energy accumulated from each sample is mathematically represented as ,in Indicates the first One digital sample, This indicates the number of samples in the sliding window.
[0045] The curve generally presents a relatively stable low-level band as the base, with several high-energy segments in the form of bulges superimposed on top of this base band. The overall height of the low-level band reflects the background power level after the squared summation of the stationary background noise. The high-level bulges correspond to the impulsive disturbances induced by power frequency harmonic coupling or broadband radio frequency interference in the original sampling sequence. After squaring, these disturbances change from bipolar transients to unipolar positive pulses with a length of [missing information]. The sliding window is further widened and smoothed in the time direction. Near the first... A prominent peak is visible at the sampling point, marked with a dot at its apex, and accompanied by a directional arrow and annotations floating above the background. Correspondingly, this value represents the peak energy of the receiver link noise in this probe sub-cycle, taken from all... The maximum value of the sequence.
[0046] Figure 4 A horizontal dashed line extends across the entire image, with its vertical axis located at the center height of the low-band, representing the receiver link noise floor energy of this probe sub-cycle. The process of obtaining this value is as follows: first, all... Sort the sequence in ascending order of values, and take the first element with the lowest value. Sample (corresponding) (Preset quantiles), and then perform an arithmetic mean on this low quantile subset. The ordinate is covered by a light gray fill band below the noise floor energy curve. The region up to the noise floor boundary threshold is marked as the "low quantile sample area," which visually indicates the energy range of all samples within the noise floor estimation sample set after sorting.
[0047] Figure 4 The peak-to-noise ratio is indicated by a note surrounded by a rounded rectangle in the middle left. This ratio is the core input for code pattern decision-making. Its dimensionless nature ensures that it remains unchanged despite absolute amplitude changes such as laser output power drift and receiver link preamplifier operating point drift, reflecting only the relative difference in the "shape" of receiver link noise. In engineering implementation, this detection sub-cycle... With other sub-periods within the same frame The frame-level peak-to-noise-base energy ratio of the previous coded measurement frame is used as the basis for subsequent classification of impulsive noise environments and stable noise environments.
[0048] At the start of the pulse interval before entering the next encoded measurement frame, the FPGA reads back the current complete frame of data from the circular buffer and performs frame-level aggregation. The frame-level peak-to-noise-floor energy ratio is calculated from all probe sub-cycles within the frame. The maximum value is denoted as , This is the sequence number of the probe sub-cycle within this frame; the maximum value is chosen because impulsive interference is rare and severe, to avoid dilution by other stable sub-cycles within the same frame; the frame-level noise floor energy is taken from the intra-frame value. The arithmetic mean is denoted as , This represents the number of intra-frame probe sub-cycles. For the first The noise floor energy of each probe sub-cycle; the mean value is used here instead of the maximum value because the noise floor is a slow variable, and the mean value is unbiased in estimating its physical level, making it suitable as a stable input for subsequent Simplex code side length selection.
[0049] Next is the code pattern adaptive decision-making. The FPGA first... With 1 preset threshold Comparison. If If the environment is classified as an impulsive noise environment, the Golay code pattern is selected; otherwise, if the environment is classified as a stable noise environment, the Simplex code pattern is selected and the side length selection is continued. In a typical configuration, 8 is chosen—this is an empirical threshold, roughly corresponding to "the instantaneous power peak being more than an order of magnitude higher than the background." In engineering... The selectable value range is from 5 to 20. The smaller the value, the more likely it is to switch to the Golay code pattern even under slight impulse disturbances, which is robust but sacrifices the Simplex coding gain under normal conditions. The larger the value, the more beneficial it is to the Simplex path, but it is easy to miss the switch under edge impact. It can also be used to implement low-cost, adaptive thresholding, i.e. , This is an adjustment factor (typically 1.5 to 3). Statistics are compiled for the initial consecutive hours (typically 6 to 48 hours) after the system is put into operation. The median, thus automatically following in different electromagnetic environments.
[0050] After determining the noise environment to be stable, the side length selection is based on... The energy range to be entered is determined. The FPGA has a built-in set of monotonically increasing thresholds. The noise floor energy axis is divided into 5 segments, corresponding to 5 candidate side lengths in the Simplex matrix library. The higher the noise floor energy, the larger the selected Simplex side length; for side length... The simplex matrix, ideally, improves the signal-to-noise ratio compared to single-pulse detection by [value missing]. ,in For signal-to-noise ratio gain, Let be the side length of the Simplex matrix; hour , hour Higher noise floor requires greater coherence gain to trigger weak reflection events, at the cost of increasing the number of probe sub-periods. The specific value is related to the equivalent noise density of the receiver link preamplifier and the resolution of the analog-to-digital conversion module. In engineering, it needs to be calibrated with a reference fiber of known attenuation before the system leaves the factory.
[0051] When the system starts up for the first time, and If none of them are defined, the FPGA will use a preset default code pattern. In industrial parks or near substations, the default code pattern is preferred for Golay, and in ordinary communication trunk lines, the default code pattern is preferred for Simplex with a side length of 7.
[0052] The output of the code pattern decision is a 2-byte code pattern identifier: the high byte identifies the code family (0x01 for Simplex code pattern, 0x02 for Golay code pattern), and the low byte identifies the specific code pattern (the matrix side length for Simplex, and the complementary code pair number for Golay). This identifier is sent along the FPGA's internal low-latency control bus to the programmable pulse generation module and the double-buffered coefficient loading logic.
[0053] The core idea of the double-buffering mechanism lies in parallelism rather than serialism—allocating the coefficients needed for decoding the current frame and the coefficients needed for decoding the next frame to two functionally equivalent register groups, denoted as register group A and register group B. At any given time, only one group plays the current role, being read by the decoding data path; the other group plays a shadow role, being in a loading state. Each register group is physically implemented as a dual-port block random access memory area with a depth equal to the maximum Simplex matrix size and a word width of 16 to 32 bits. Taking the BRAM resources of the Xilinx Kintex-7 series XC7K325T as an example, each of the two groups occupies 18 BRAMs of 36 kilobits each, with a total maximum loading capacity of approximately 65 kilobytes per frame, far below the total BRAM budget of the device.
[0054] The loading process begins during the pulse interval when the code pattern decision result is obtained. All candidate Simplex inversion matrices and Golay complementary code pairs are pre-stored in the FPGA's on-chip ROM, including those iteratively generated using Sylvester construction. Five Simplex inversion matrices and several lengths of The Golay complementary code pair occupies approximately 200 kilobytes of ROM. The loading logic locates the corresponding start address in ROM according to the code pattern identifier, and sequentially writes the matrix elements or tap coefficients into the register group acting as the shadow register using continuous burst reads. The Golay code pattern loaded is its time-reverse version—with a length of... Bipolar mother code Reversed during the loading phase This allows for the convolution operation when used as a tap of a finite impulse response filter. Equivalent to the correlation operation between the echo sequence and the original mother code. This eliminates one memory flipping operation during the decoding stage.
[0055] The role swapping of register groups is handled by the frame synchronization signal: the frame synchronization signal is a hardwired pulse inside the FPGA, which emits a high level for one clock cycle at the start of the pulse emission window of the first probe sub-cycle of each coded measurement frame. The hardware implementation is a dual-input multiplexer, whose selection terminal is controlled by a 1-bit toggle flip-flop driven by the frame synchronization signal. The flip-flop output toggles on the rising edge of the frame synchronization signal, switching the multiplexer output between register group A and register group B. The role swapping takes one clock cycle, with a conversion time of less than 10 nanoseconds. After the swap, the register group that originally played the shadow role is immediately available for decoding operations.
[0056] After receiving the code pattern identifier, the programmable pulse generation module will follow two different pulse generation paths according to the code family of the identifier.
[0057] When traversing the Simplex path, the programmable pulse generation module modifies the number of probe sub-cycles in the encoded measurement frame with the side length of the selected Simplex matrix. Lock for consistency, and sort the matrix from row 1 to row 2 in chronological order. The rows are assigned sequentially to the first to the second row. Each probe sub-cycle. Within the pulse emission window of each probe sub-cycle, the matrix rows allocated to that sub-cycle are scanned bit-by-bit serially: a bit value of 1 sends a high-level gating pulse (typically 5 to 10 nanoseconds wide) to the gate control input of the injected optical on / off module; a bit value of 0 keeps the gate control low and suppresses optical output. One row After the scan is complete, a sequence of probe pulses precisely corresponding to each row is injected into the optical cable—each sub-pulse in the sequence corresponds one-to-one with an element in the matrix. This sequence of sub-pulses undergoes Rayleigh scattering in the fiber, and the weak echoes from each position superimpose in time. These echoes are then extracted by the optical circulator to the photodetector, and continuously sampled at a rate of approximately 500 mega-samples per second by the analog-to-digital converter until the echo reception window ends. The sampled data yields a sequence of length... echo data sequence, The total number of samples within the echo reception window (approximately for a 150 km optical cable) ). After each detection sub-cycle is completed The echo data sequences are arranged in a single sequence, aligned by mileage sampling points. echo data matrix Simplex inversion decoding uses matrix multiplication. Finish, That is, the Simplex inversion matrix read from the register set that assumes the current role. yes The decoding matrix. The OK That is, the first The single-pulse equivalent response sequence of each sub-pulse bit. The subpulse is offset relative to the start time of the pulse transmission window. , The unit sub-pulse time width; the corresponding mileage sampling point offset is , The sampling period for the analog-to-digital conversion module (sampling per second for 500 MHz). Nanoseconds). The first Reverse translation of sampling point dimension along the row Each sampling point is used to align the "hypothetical sub-pulse emission time" of all rows to the common starting point of the frame; then, the alignment arithmetic mean is performed on all aligned rows to obtain the decoded backscatter trajectory of this encoded measurement frame along the optical cable mileage. , To decode the backscattering trajectory in the first The intensity of each mileage sampling point Indicates the decoding matrix of the first... OK, This represents the side length of the Simplex matrix.
[0058] When following the Golay path, the number of probe sub-cycles in the encoded measurement frame is fixed at 4. Within these 4 probe sub-cycles, 4 sequences of probe pulses corresponding to non-negative sub-codes are injected sequentially. Let the first Golay bipolar mother code in the complementary code pair be... The second Golay bipolar mother code is ,in , The length of the mother code (typically taken as...) Bit splitting Decompose into positive non-negative subcodes With negative non-negative subcode Both are non-negative sequences and ; also received The first probe cycle was launched. The corresponding probe pulse sequence was used to sample and obtain the first positive echo data sequence. Launch during the second probe cycle. The corresponding probe pulse sequence was used to sample and obtain the first negative echo data sequence. And so on. and The Golay matched filter unit performs a calibrated subtraction at the same mileage sampling point location to obtain the bipolar equivalent echo. and Since optical fiber is a linear time-invariant system, this subtraction can restore the optical fiber's bipolar master code. and The true response is obtained, but since the injected optical on / off module itself can only output non-negative subcodes, it is not feasible to directly physically generate bipolar sequences in hardware. Therefore, it is necessary to use two non-negative emissions plus post-differentiation to achieve equivalent bipolarity. and The tap coefficients of the two filters are fed into the first and second FIR filter branches respectively, and the set of tap coefficients of the two filters is exactly read from the register group that is currently performing the function. and Time reversal; filtered output is , Finally, sum the positions using arithmetic. This is the decoded backscatter trajectory of the coded measurement frame along the optical cable mileage. The Golay complementary code pair satisfies... , Indicates autocorrelation. The Kronecker delta function is represented; the sum of the two-branch filter outputs is equivalent to the fiber impulse response and gain. The convolution of the Kronecker delta function does not introduce shape distortion.
[0059] refer to Figure 2 , Figure 2 The diagram shows the waveforms of the two bipolar mother codes of the Golay complementary code pair selected in this embodiment of the invention, arranged side-by-side horizontally, with the first bipolar mother code shown on the left. The waveform shows the second bipolar mother code on the right. The waveforms, both of which have a length of .
[0060] Each waveform is plotted in a stepped manner, with the horizontal axis labeled "position". The scale extends from 0 to 16, with intervals of 4. The vertical axis is labeled "Amplitude," and only the amplitude is taken. , , Three scale values. The waveform is plotted bit by bit in the form of a step function, maintaining a constant value at the integer x-coordinate corresponding to each bit. or The instantaneous jumps occur at the integer boundaries between adjacent positions, thus accurately reflecting the discrete value characteristics of the bipolar mother code. The vertical axis range of both waveforms is... to Visually Leave a symmetrical margin when selecting values to avoid the top of the step being too close to the edge and not being clearly displayed.
[0061] First Bipolar Mother Code The specific value sequence is as follows In the waveform diagram, this is represented by the first 3 digits being taken consecutively. The 4th place jumped down to The 5th and 6th positions have rebounded. The 7th place jumped down again. Take consecutively from the 8th to the 11th position. Take consecutive bits from the 12th to the 14th position. Ranked 15th 16th place down .
[0062] Second Bipolar Mother Code The specific value sequence is as follows The first 8 bits on the waveform diagram are related to the first bipolar mother code. Completely identical, starting from the 9th bit, and the first bipolar mother code. A mirror flip occurs, and bits 9 through 11 are taken consecutively. Take consecutive bits from the 12th to the 14th position. The 15th position jumped down to Ranked 16th This structure, where the first half is identical and the second half is inverse, is a typical feature of Golay complementary code pairs constructed using Sylvester iterations. It is this structure that allows the sum of their autocorrelation to exhibit a strict Kronecker delta form.
[0063] First Bipolar Mother Code With the second bipolar mother code It is a bipolar prototype sequence before the bit splitting operation of Golay complementary code pairs. In engineering implementation, The bipolar sequence of values cannot be directly generated by the injection light on / off module that can only produce non-negative optical power. Therefore, it is necessary to split the positive and negative bits to obtain positive non-negative sub-codes and negative non-negative sub-codes, and then inject them into the optical cable separately in different probe sub-cycles. Figure 2 The bipolar mother code waveform shown is the input for this bit splitting operation, and also the original code pattern used by the Golay matched filter unit as the tap coefficients of the finite impulse response filter. In hardware implementation, the discrete sequence corresponding to this waveform is processed by reversing the time sequence and then stored in the register group that assumes the current role, forming the first tap coefficient set and the second tap coefficient set, which are called by subsequent matched filtering operations.
[0064] refer to Figure 3 , Figure 3 This invention illustrates the value characteristics of the Golay complementary code pair selected in the embodiments of the invention within the autocorrelation and complementary summation domains. Three correlation function graphs are presented side-by-side in a horizontal arrangement, from left to right representing the first bipolar mother code. autocorrelation function 2nd Bipolar Mother Code autocorrelation function and the sum of the two .
[0065] Each graph plots the discrete correlation sequence in the form of pulse bars, with the horizontal axis labeled "hysteresis". The value range is from to , that is, from to This is to cover all non-zero lag intervals that the sequence of this length can take when performing linear autocorrelation. The vertical axis is set to a range of values in the first two graphs. to The value range for the third image is set to to This is to accommodate the higher peak values that appear at zero hysteresis after complementary summation. Each pulse bar extends upward or downward from the zero baseline on the vertical axis to the corresponding correlation value, and the top of the bar is marked with a dot, so that the value at each discrete hysteresis has a clear visual indication.
[0066] First Bipolar Mother Code autocorrelation function Zero hysteresis The dominant peak value is taken at the specified position, and its value is equal to the sequence length. The product of each square, i.e. At non-zero lag, The values fluctuate between positive and negative, exhibiting a typical Barker-type sidelobe distribution, with the algebraic values of the sidelobes varying with... The values change and alternate between positive and negative, with the absolute value not exceeding [a certain threshold]. The second bipolar mother code autocorrelation function Also achieved at zero hysteresis The dominant peak, the algebraic symbol taking values at non-zero hysteresis, and the first bipolar mother code. The autocorrelation function exactly satisfies the opposite correspondence between positive and negative values, that is, in each non-zero lag... It is everywhere .
[0067] It is this algebraic cancellation at the non-zero lag that makes the sum of the two... The value is strictly zero at all non-zero lags, while at zero lag... The superposition is The summation result is mathematically equivalent to a gain of Kronecker Delta function ,Right now This property is in Figure 3 One of them has a height equal to The central pulse bar and the strictly zeroed horizontal baselines on both sides are presented together, forming a stark contrast with the side lobe residual waveforms presented by similar pulse compression coding.
[0068] Due to the orthogonal summation property of Golay complementary code pairs, subsequent matched filtering operations, after convolution on two independent branches, only require positional summation to accurately reconstruct the optical cable's impulse response without introducing sidelobe distortion. This is equivalent to the optical cable's impulse response being summed with a gain of [missing information]. The convolution of the Kronecker delta function. This "zero sidelobe" property makes Golay matched filtering significantly more resistant to contamination than Simplex inversion in impulsive noise environments, and therefore it is the preferred coding scheme for this invention in impulsive noise environments. Figure 3This key property is visualized from an abstract algebraic identity into a directly observable pulse distribution, providing an intuitive basis for those skilled in the art to quickly determine the engineering usability of the selected Golay complementary code pair.
[0069] Thus, the decoded backscatter trajectory of this encoded measurement frame along the optical cable mileage is now complete. Everything is ready. The multi-source fusion phase will then commence: first, time alignment will be performed. Each strain, vibration, and temperature signal uploaded by each sensor node carries a PTP or satellite-synchronized timestamp with an accuracy better than 100 nanoseconds; each mileage sampling point in the decoded backscatter trajectory also corresponds to the precise launch time. Add propagation delay The FPGA uses this encoding to measure the transmission time of the frame. To align the zero point, the multi-source fusion time window is... The time series data buffered by the internal sensing node is resampled to the same time anchor point as the decoded backscatter trajectory. The duration of the multi-source fusion segment is typically 0.2 seconds. Resampling can be performed using linear interpolation or third-order spline interpolation. Linear interpolation is sufficient for industrial deployments, while third-order splines are used for extracting the dominant frequency band of phase-sensitive vibrations.
[0070] The physical location of each sensor node was accurately recorded in the database before the system was put into operation, and the fields included fiber core mileage coordinates. (meters), absolute geographic coordinates (longitude, latitude, altitude). Decoding the backscatter trajectory in The sampling index at the location is , For spatial resolution (at 500 megasamples per second, group velocity) For example, meters per second (meters). FPGA for the position of each sensing node. Take out The strain, vibration, and temperature time series transmitted from the same node are concatenated to form multi-source raw data slices. Then, a feature extraction pipeline extracts scalar features from these slices: for backscattering trajectories, local attenuation abrupt changes, reflection event amplitude, and backscattering trajectory slope changes; for strain signals, strain peak value and strain gradient; for vibration signals, vibration energy and vibration dominant frequency band features; and for temperature signals, temperature rise rate and temperature gradient. These nine features are then concatenated to form a multi-source state vector at the cost mileage location. .
[0071] Feature extraction algorithms each have their own focus. (The text then abruptly shifts to a seemingly unrelated topic: taking local decay abrupt changes.) The absolute value of the difference between the average value within 1 km before and after it reflects local weld damage or macrobending; the amplitude of the reflection event is taken as... The maximum difference between the backscattering trajectory and its neighborhood median reflects connector contamination or localized fiber breakage. The change in the backscattering trajectory slope is taken as... exist The difference in the first-order fitting slope over 1 km intervals reflects the abrupt change in the macroscopic attenuation coefficient. The peak strain and strain gradient are given by the maximum value and maximum slope of the difference in the strain time series within the multi-source fusion section. Vibration energy is the square integral of the vibration signal within the multi-source fusion section; the dominant frequency band characteristic is the center of the frequency band with the highest energy after the vibration signal undergoes a 1024-point Fast Fourier Transform. The temperature rise rate and temperature gradient are given by the maximum slope of the difference and the difference between the first and last values in the temperature time series. All characteristic quantities are Z-score normalized before being fed into the state assessment model. , and The first The mean and standard deviation of each feature are estimated from the training data collected during the first 30 days after the system is put into operation. The purpose of normalization is to eliminate the order-of-magnitude differences among the nine features, so that the gradient boosting model or convolutional neural network can converge stably at a reasonable learning rate.
[0072] The status assessment model runs on the server in the monitoring center. One implementation uses XGBoost gradient boosting decision trees with a tree depth of 6, 300 trees, and a learning rate of 0.05, trained on labeled historical fault samples. For early deployments with no more than 1000 labeled samples, this implementation has the advantages of fast training and strong interpretability; the model outputs the operational health status at the current mileage location. The closer the value is to 1, the higher the health level. Another implementation uses a 1D convolutional neural network to concatenate the multi-source state vectors of the current mileage position and the 32 adjacent mileage positions along the spatial dimension. The matrix input is processed through four convolutional blocks (each consisting of 3×1 convolutions, batch normalization, modified linear units, and max pooling) and one fully connected layer to obtain the operational health score. Two implementations can be switched in stages: a decision tree is used initially, and the system is upgraded to a neural network once sufficient samples are available.
[0073] Finally, the monitoring center will determine the warning level and operational health status. With a set of preset multi-level early warning thresholds (typical , , , Make a step-by-step comparison. The blue warning level range indicates that the optical cable is in good health. This is mapped to a yellow alert level range, indicating that an observable anomaly has occurred but has not yet reached the threshold for handling. This is mapped to an orange alert level, indicating a recommendation to send personnel for on-site verification. The map is mapped to a red alert level range, indicating an impending fault or imminent third-party sabotage, triggering automatic dispatch. The specific values are determined by the on-site operation and maintenance team based on the acceptable false alarm rate and missed alarm rate. Under a typical setting, the system's annual false alarm rate is less than 0.5 times per thousand kilometers, and the missed alarm rate is less than 2%.
[0074] All of the above processing can be completed in real time on an industrial-grade FPGA and a mid-range server (typical configuration: 16-core Intel Xeon Silver 4314, 64 gigabytes of memory, and one NVIDIA T4 inference card). The end-to-end latency of a single 150-kilometer optical cable can be reduced to less than 1 second.
[0075] The above-described embodiments are merely illustrative examples. Those skilled in the art can make various omissions, substitutions, and changes to the details of the methods and systems described above without departing from the principles and essence of the present invention. The scope of the present invention is defined only by the appended claims.
Claims
1. A fiber optic cable condition assessment and early warning system based on the fusion of multi-source fiber optic sensing and OTDR, comprising a multi-source fiber optic sensing unit, an optical transceiver, and a monitoring center, characterized in that: The multi-source fiber optic sensing unit includes multiple sensing nodes laid along the optical cable. Each sensing node collects its strain, vibration, and temperature signals at a unified time base and uploads them to the optical transceiver via a convergence link. The optical transceiver includes a narrow-linewidth laser, an injection optical on / off module, a programmable pulse generation module, a Rayleigh backscattered light receiving link, an analog-to-digital conversion module, and an FPGA. The system operates cyclically according to an evaluation cycle, which consists of one coded measurement frame and one multi-source fusion segment. The coded measurement frame consists of several detection sub-cycles containing pulse transmission windows, echo reception windows, and pulse intervals. Within the pulse interval, the FPGA calculates the peak-to-noise ratio of the receiving link based on the Rayleigh backscattered light receiving link output. Based on the frame-level peak-to-noise ratio and frame-level noise floor of the previous coded measurement frame, it adaptively selects either the Simplex code pattern or the Golay code pattern and outputs the code pattern identifier. Within the pulse interval, it preloads the Simplex inversion matrix elements or the Golay tap coefficient set required for the next coded measurement frame through a double-buffered register group. The role of the register group is switched by the frame synchronization signal. The programmable pulse generation module responds to the code pattern identifier and drives the injection optical on / off module to generate a probe pulse sequence and inject it into the optical cable. The FPGA decodes the echo data sequence collected by the analog-to-digital conversion module according to the current code pattern and outputs the decoded backscatter trajectory along the optical cable mileage. The decoded backscatter trajectory, strain signal, vibration signal, and temperature signal are aligned with a unified time base to form a multi-source state vector, which is then mapped to the operational health status by the state assessment model. The monitoring center maps the operational health status to the early warning level interval according to the multi-level early warning threshold and presents it visually.
2. The system according to claim 1, characterized in that, Each sensing node is equipped with a strain sensing subunit, a vibration sensing subunit, and a temperature sensing subunit. The strain sensing subunit, vibration sensing subunit, and temperature sensing subunit are driven by a unified time base to synchronously collect the strain signal, vibration signal, and temperature signal of the optical cable at the mileage location of the sensing node. The aggregation link is set between the sensing node and the optical transceiver.
3. The system according to claim 1, characterized in that, The injection optical switching module is composed of any one of an acousto-optic modulator, an electro-optic modulator, and an optical switch. The injection optical switching module is set between the narrow linewidth laser and the optical cable. The narrow linewidth laser maintains steady-state illumination during system operation. The Simplex matrix library contains multiple Simplex matrices with different side lengths. Each Simplex matrix has a corresponding Simplex inversion matrix. The Golay complementary code pair includes the first Golay bipolar mother code and the second Golay bipolar mother code. Each bipolar mother code is bit-split to obtain positive non-negative sub-codes and negative non-negative sub-codes. The positive non-negative sub-code is obtained by keeping the bits with a value of 1 in the bipolar mother code as 1 and the bits with a value of -1 as zero. The negative non-negative sub-code is obtained by keeping the bits with a value of -1 in the bipolar mother code as 1 and the bits with a value of 1 as zero.
4. The system according to claim 1, characterized in that, The FPGA has a built-in noise feature extraction unit; In each probe sub-cycle, the noise feature extraction unit performs a squaring operation and a sliding accumulation operation with a fixed window length on the sampling sequence obtained by the analog-to-digital conversion module from the Rayleigh backscatter light receiving link output during the pulse interval. The maximum value in the sliding energy sequence is taken as the peak noise energy of the receiving link in this probe sub-cycle. The sliding energy sequence is sorted in ascending order of value, and the arithmetic mean of the samples below the preset quantile is taken as the noise floor energy of the receiving link in this probe sub-cycle. The ratio of the peak noise energy of the receiving link to the noise floor energy of the receiving link is taken as the peak-to-noise floor energy ratio of this probe sub-cycle.
5. The system according to claim 1, characterized in that, The FPGA has a built-in code pattern decision unit. During the pulse interval before the start of each encoded measurement frame, the code pattern decision unit reads the peak-to-noise ratio (PNR) of all probe sub-cycles in the previous encoded measurement frame and uses the maximum value as the frame-level PNR. When the frame-level PNR is greater than the preset PNR threshold, the code pattern decision unit determines that the current receiving link is in an impulse noise environment and outputs the Golay code pattern identifier to the programmable pulse generation module and the double-buffered coefficient loading unit. Otherwise, the code pattern decision unit determines that the current receiving link is in a stable noise environment, reads the receiving link noise floor energy corresponding to all probe sub-cycles in the previous coded measurement frame and takes the arithmetic average to obtain the frame-level noise floor energy, compares the frame-level noise floor energy with the preset multi-level noise floor energy thresholds level by level, selects a Simplex matrix with the corresponding side length from the Simplex matrix library according to the noise floor interval in which the frame-level noise floor energy falls, and outputs the Simplex code pattern identifier and the side length information of the selected Simplex matrix to the programmable pulse generation module and the double buffer coefficient loading unit; when the system starts for the first time, the code pattern decision unit uses the preset default code pattern as the code pattern of the first coded measurement frame.
6. The system according to claim 1, characterized in that, The FPGA incorporates a double-buffered coefficient loading unit. Register group A and register group B of the double-buffered coefficient loading unit constitute a double-buffered register group, each assuming a current role and a shadow role at any given time. The register group assuming the current role is connected to the decoding operation data path for decoding operations of the current encoded measurement frame. The register group assuming the shadow role is connected to the FPGA's on-chip ROM read path for pre-loading the inversion matrix elements or tap coefficient set of the next encoded measurement frame. Within the same pulse interval after the code pattern decision unit outputs the code pattern identifier, the double-buffered coefficient loading unit retrieves the Simplex inversion matrix elements required for the next encoded measurement frame, or the time reversal of the first Golay bipolar mother code and the second Golay bipolar mother code as the tap coefficient set, from the on-chip ROM and writes them to the register group assuming the shadow role. At the start of the pulse transmission window of the first probe sub-cycle of the next encoded measurement frame, the frame synchronization signal triggers the role swap between register group A and register group B. The pre-loaded register group assumes the current role, while the original register group assuming the current role assumes the shadow role and awaits the next pre-loading.
7. The system according to claim 1, characterized in that, The FPGA integrates a Simplex inversion decoding unit. When the programmable pulse generation module receives the Simplex code pattern identifier and the side length information of the selected Simplex matrix, it sets the number of probe sub-cycles of the encoded measurement frame to be equal to the side length of the selected Simplex matrix. It then sequentially allocates each row of the selected Simplex matrix to each probe sub-cycle in chronological order. Within each probe sub-cycle, bits with a value of 1 in the allocated Simplex matrix row are mapped to sub-pulse transmission, and bits with a value of 0 are mapped to sub-pulse intervals. This drives the injection optical on / off module to generate the corresponding probe pulse sequence and inject it into the optical cable. The analog-to-digital conversion module samples the corresponding echo data sequence at a uniform sampling interval within the corresponding echo reception window. The Simplex inversion decoding unit, from the perspective of the current angle... The Simplex inversion matrix corresponding to the selected Simplex matrix is read from the register group of the color. The echo data sequences obtained from all the probe sub-cycles are arranged in alignment with the mileage sampling points to form an echo data matrix. The matrix multiplication operation between the Simplex inversion matrix and the echo data matrix is performed to obtain the decoding matrix. Each row of the decoding matrix corresponds to the single-pulse equivalent response sequence of one sub-pulse bit arranged in time order in the probe pulse sequence. The Simplex inversion decoding unit calculates the corresponding mileage sampling point offset number based on the time offset of the corresponding sub-pulse bit in each row relative to the start time of the pulse transmission window. The corresponding mileage sampling point offset number is shifted in the opposite direction along the mileage sampling point direction to align the starting mileage reference of all single-pulse equivalent response sequences to the same mileage reference point. The Simplex inversion decoding unit performs an arithmetic average of all aligned single-pulse equivalent response sequences at the same mileage sampling point location and outputs the decoded backscatter trajectory of the encoded measurement frame along the optical cable mileage.
8. The system according to claim 1, characterized in that, The FPGA integrates a Golay matched filter unit. Upon receiving the Golay code pattern identifier, the programmable pulse generation module sets the number of probe sub-cycles of the encoded measurement frame to four. Within these four probe sub-cycles, it sequentially injects the positive and negative sub-codes of the first Golay bipolar mother code and the positive and negative sub-codes of the second Golay bipolar mother code into the optical fiber to drive the injection optical switching module, generating the first positive probe pulse sequence, the first negative probe pulse sequence, the second positive probe pulse sequence, and the second negative probe pulse sequence. The analog-to-digital conversion module samples the first positive echo data sequence, the first negative echo data sequence, the second positive echo data sequence, and the second negative echo data sequence within the echo reception window corresponding to each of the four probe sub-cycles. The Golay matched filter unit then uses the first positive echo data sequence and the first negative echo data sequence at the same mileage sampling point location. The first bipolar equivalent echo sequence is obtained by subtracting the second positive echo data sequence from the second negative echo data sequence. The second bipolar equivalent echo sequence is obtained by subtracting the second positive echo data sequence from the second negative echo data sequence. The Golay matched filter unit reads the time reversal of the first Golay bipolar mother code and the time reversal of the second Golay bipolar mother code from the register group that assumes the current role, and loads them into the first and second tap coefficient sets, respectively. The first bipolar equivalent echo sequence is output as the first intermediate sequence through the first FIR filter branch, and the second bipolar equivalent echo sequence is output as the second intermediate sequence through the second FIR filter branch. The Golay matched filter unit performs a positional arithmetic summation on the first and second intermediate sequences at the same mileage sampling point position, and outputs the decoded backscatter trajectory of this encoded measurement frame along the optical cable mileage.
9. The system according to claim 8, characterized in that, The Golay matched filter unit is also configured to perform squaring and fixed-window-length sliding accumulation operations on the first positive echo data sequence, the first negative echo data sequence, the second positive echo data sequence, and the second negative echo data sequence to obtain four intra-frame sliding energy sequences. For each intra-frame sliding energy sequence, the corresponding local peak-to-noise ratio is calculated according to the calculation method of received link noise floor energy and received link noise peak energy. The maximum value of the four local peak-to-noise ratios is used as the intra-frame contamination index of this coded measurement frame. When the intra-frame contamination index is greater than the preset intra-frame contamination threshold, this coded measurement frame is marked as impact contamination and is re-measured by the next coded measurement frame.
10. The system according to claim 1, characterized in that, For each mileage location along the optical cable, the optical transceiver extracts the local attenuation abrupt change, reflection event amplitude, and backscatter trajectory slope change value from the decoded backscatter trajectory; extracts the strain peak value and strain gradient from the strain signal; extracts the vibration energy and vibration main frequency band characteristics from the vibration signal; and extracts the temperature rise rate and temperature gradient from the temperature signal. The extracted features together constitute the multi-source state vector for this mileage location. The multi-source state vector is input into a pre-set state assessment model in the monitoring center, and the state assessment model outputs the operational health status of this mileage location. The monitoring center maps the operational health status to the corresponding early warning level interval according to the pre-set multi-level early warning level thresholds and visualizes the mileage location and the corresponding early warning level interval.