A spectrum sensing system and method for discrete shared bands
By using a multi-antenna spectrum sensing system and a blind spectrum sensing algorithm, the problem of frequency point detection in discrete shared frequency bands is solved, improving the sensitivity and accuracy of spectrum sensing and making it suitable for multi-antenna communication systems.
Patent Information
- Application Number
- CN202411965909.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-30
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2044-12-30
AI Technical Summary
Existing spectrum sensing technologies cannot effectively detect frequency points in discrete shared frequency bands, especially under signal spectrum characteristics and interference conditions, and are not compatible with multi-antenna communication systems, resulting in insufficient sensitivity and accuracy of spectrum sensing.
A multi-antenna spectrum sensing system is adopted, which combines base stations, edge computing devices and sensing terminals, and uses technologies such as in-phase quadrature signal demodulation, dual-channel filtering and fast Fourier transform, combined with blind spectrum sensing algorithm and multi-antenna sensing algorithm to realize spectrum data acquisition, processing and prediction.
It improves the sensitivity and accuracy of spectrum sensing, enables stable spectrum sensing under low signal-to-noise ratio conditions, is compatible with existing communication systems, and meets real-time requirements.
Smart Images

Figure CN119854806B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the technical field of wireless communication, and relates to a spectrum sensing system and method for discrete shared frequency bands. BACKGROUND
[0002] The discrete shared frequency band refers to the 233-235MHz communication frequency band. The frequency band is deployed with communication private networks of multiple industries such as power, gas, civil air defense, and water affairs. At present, LTE 230 and IoT 230 communication systems are mainly applied. In 2018, the Ministry of Industry and Information Technology issued the Notice on Adjustment of Frequency Use Planning of Wireless Data Transmission System in 223-235MHz Frequency Band by the Ministry of Industry and Information Technology, which allows units to integrate discrete frequency points in 223-226MHz and 229-233MHz frequency bands for continuous spectrum use, and supports multiple different services to perform data transmission in a common frequency band in a time / frequency division multiplexing manner.
[0003] With the maturity of 5G RedCap technology for commercial use, it is expected to deploy this technology and its network in the 233-235MHz communication frequency band in the future, further improving the spectrum utilization of the frequency band. However, due to the difficulty in spectrum management of the discrete shared frequency band, different communication systems and communication technologies may be adopted by different communication services, illegal data transmission radio stations randomly occupy some frequency points, and the interference of low-frequency high-power devices is serious, which will affect the deployment and implementation of the communication network. In view of these problems, it is necessary to apply the spectrum sensing technology in the field of cognitive radio. On the one hand, the spectrum sensing technology can realize the interference detection of discrete frequency points, and reasonable avoidance methods can improve the reliability of the communication system. On the other hand, the spectrum sensing technology helps to find idle spectrum, which can improve the effectiveness of communication.
[0004] At present, the narrowband spectrum sensing technology detects signals for a certain frequency band, which can achieve good detection sensitivity and can detect user signals in the frequency band under low signal-to-noise ratio conditions. The sensing process of the narrowband spectrum sensing technology is as shown in Figure 1 The principle is to collect data of a certain frequency band, then calculate a detection statistic reflecting the characteristics of the user signal through a corresponding algorithm, and then compare it with a detection threshold to determine whether there is a user signal in the frequency band.
[0005] The classical spectrum sensing methods include energy detection method, cyclic spectrum detection method, and matching filter method. These spectrum sensing methods need some prior information to determine the decision threshold, otherwise the spectrum sensing performance will be reduced. Later, some researchers proposed some blind spectrum sensing methods without prior information, such as eigenvalue detection method and covariance matrix detection method. The blind sensing method can further improve the system stability of spectrum sensing, but the complexity of sensing will be improved accordingly. For the discrete shared frequency band, the existing spectrum sensing technology has the following two problems, which cannot effectively perform spectrum sensing.
[0006] First, the signal spectrum characteristics of the discrete shared frequency band need a suitable spectrum sensing technology. The existing spectrum sensing technology is suitable for detecting wideband signals, collecting large amount of data signals, or sensing known system signals. In the discrete shared frequency band, the frequency points are clearly divided, and there are a total of 480 frequency points, each with a bandwidth of 25 kHz. The user uses the spectrum resource in units of frequency points in the frequency band. The user signal has the characteristics of short symbol period, discrete frequency points, and narrow signal bandwidth. It is difficult to accurately collect a large amount of user data when performing sensing on each frequency point in the frequency band, so the existing spectrum sensing technology is not suitable.
[0007] Second, the communication system available in the discrete shared frequency band needs a suitable spectrum sensing technology. Due to the characteristics of long transmission distance, wide coverage, and serious interference of low-frequency high-power devices of the user signal in the frequency band, the existing spectrum sensing technology needs to further improve the sensitivity of sensing. The current 5G communication network supports the use of multi-antenna technology to realize long-distance and high-reliability transmission, and the discrete shared frequency band also has communication systems using multi-antenna technology. Based on the signal correlation characteristics between multiple antennas, the sensing algorithm will help to improve the detection sensitivity of the sensing system. There are many multi-antenna-based sensing algorithms in the existing spectrum sensing technology, but they mainly stay at the theoretical level, and there are few studies on the actual use of a few antennas and related parameter settings. In addition, the discrete shared frequency band is mainly used for Internet of Things services, and the communication system needs to consider the cost problem.
[0008] In summary, based on the characteristics of discrete frequency point distribution and possible random interference radio stations in the discrete shared frequency band, and the characteristics of allowing the use of multiple transmission antennas in the communication system of the frequency band, the sensing system and method need to be redesigned. SUMMARY
[0009] Therefore, the purpose of the present application is to provide a spectrum sensing system and method for a discrete shared frequency band.
[0010] To achieve the above purpose, the present application provides the following technical solutions:
[0011] A spectrum sensing system for discrete shared frequency bands, the system comprising: at least one base station, at least one edge computing device, and a plurality of sensing terminals, each sensing terminal being provided with at least two receiving antennas, a dual-channel amplification and filtering circuit, a dual-channel digital-to-analog converter, and an internal data processing module, the internal data processing module comprising, in sequence, a same-phase and quadrature signal demodulation module, a secondary mixing module, a filtering and sampling module, a fast Fourier transform module, a frequency selection and grouping module, a spectrum sensing module, and a sensing result sending module, wherein,
[0012] The plurality of sensing terminals collect spectrum data and perform spectrum sensing, and send the sensing results to the base station, which then forwards the sensing results to the edge computing device for fusion processing of the plurality of sensing results. The edge computing device, after fusing the plurality of sensing results, predicts the spectrum occupation of subsequent time steps using a pre-trained binary prediction model, and sends the spectrum prediction results to the base station. The base station filters the idle spectrum frequency points according to the spectrum prediction results and communicates with the sensing terminals;
[0013] Each sensing terminal internally collects two channels of radio frequency data, the radio frequency data being received from two antennas, amplified and filtered by a dual-channel amplification and filtering circuit, and then sampled by a dual-channel digital-to-analog converter to obtain time-domain radio frequency signals. The time-domain radio frequency signals are then IQ demodulated by a same-phase and quadrature signal demodulation module to obtain IQ data. The IQ data is transferred to a secondary mixing module for secondary mixing, which divides the signal spectrum into two sub-bands. A fast Fourier transform module performs fast Fourier transform on the signals of the two sub-bands to obtain spectrum data for the two antennas. The spectrum data is selected and grouped by frequency by a spectrum sensing module, and then spectrum sensing is performed by the spectrum sensing module. Finally, the spectrum sensing results and sensing time information are sent to the base station by a sensing result sending module.
[0014] Further, the same-phase and quadrature signal demodulation module in each sensing terminal IQ demodulates the discrete shared frequency band radio frequency signal to obtain IQ data, wherein the same-phase and quadrature signal demodulation module multiplies the two channels of radio frequency signal data collected by the dual-channel digital-to-analog converter for antenna 1 and antenna 2, respectively, with a mixing carrier frequency f c1 to obtain the collected IQ data for the two channels of signals, the mixing carrier frequency f c1 being referred to as a local carrier 1, which includes an I-channel carrier and a Q-channel carrier with a frequency of f c , and are represented as cos(2πf c1 n s / f s1 ) and -sin(2πf c1 n s / f s1 ), respectively, where n s = 1, 2, …, N s , and N srepresents the length of data collected in one sampling period of the ADC, f s1 is the sampling frequency of the ADC; the IQ data output by the IQ demodulation module after filtering and sampling generates baseband signal IQ data, denoted as baseBandSignal[m], where m represents the antenna number and has a value of 1 or 2.
[0015] Further, the secondary mixing module of each sensing terminal mixes the baseband signal in the obtained IQ data baseBandSignal with a secondary mixing carrier frequency f c21 , f c22 , denoted as localCarrier2, where,
[0016] The secondary mixing module multiplies the baseBandSignal of antenna 1 with the two carriers f c21 , f c22 of localCarrier2, respectively, to obtain the mixed IQ data of sub-band 1 and sub-band 2 corresponding to antenna 1, denoted as mixFreqSignal[m1][1] and mixFreqSignal[m1][2], where m1 represents the antenna number and has a value of 1.
[0017] The secondary mixing module multiplies the baseBandSignal of antenna 2 with the two carriers f c21 , f c22 of localCarrier2, respectively, to obtain the mixed IQ data of sub-band 1 and sub-band 2 corresponding to antenna 2, denoted as mixFreqSignal[m2][1] and mixFreqSignal[m2][2], where m2 represents the antenna number and has a value of 2.
[0018] where localCarrier2 is:
[0019]
[0020] where n1 = 1, 2, …, N1, N1 is the length of the baseband signal IQ data, f s2 is the baseband digital sampling frequency, which has a value equal to N1 divided by the sampling period.
[0021] Further, the filtering and sampling module of each sensing terminal includes filtering and sampling module 1 and filtering and sampling module 2, which are respectively arranged at the output ends of the IQ demodulation module and the secondary mixing module, to filter out irrelevant frequency signals and reduce the IQ data rate by sampling, where,
[0022] The filter sampling module 1 uses a Butterworth low-pass digital filter to filter the IQ data output by the IQ demodulation module, and then uses a sampling module to sample the filtered IQ data, with the sampling multiple being equal to the ADC sampling frequency divided by the FFT point number, divided by the sub-carrier interval, divided by 2. The filtered and sampled IQ data is the baseband signal IQ data baseBandSignal[m];
[0023] The filter sampling module 2 uses a Butterworth low-pass digital filter to filter the IQ data output by the second mixing module. The IQ data output by the second mixing module is denoted as mixFreqSignal[m][n f ], where m represents the antenna number and has a value of 1 or 2, and n f represents the sub-band number and has a value of 1 or 2. A sampling module is used to sample the filtered IQ data, with the sampling multiple being 2. The filtered and sampled IQ data is denoted as subBandSignal[m][n f ].
[0024] Further, the fast Fourier transform module of each sensing terminal performs FFT transformation on the two-antenna IQ data in the sub-band 1 and the sub-band 2 in subBandSignal[m][n f ] to obtain the spectrum data of the antenna 1 and the antenna 2, denoted as subCarrierData[m][n f ].
[0025] Further, the frequency selection grouping module of each sensing terminal performs frequency selection grouping on the spectrum data corresponding to the two antennas in the sub-band 1 and the sub-band 2 in subCarrierData, with a single frequency point bandwidth B as the grouping reference. After grouping, the spectrum data in different groups carries the spectrum information of different frequency points, and the spectrum data corresponding to the two antennas in one group contains one or more sampling periods. The processing process is as follows:
[0026] 1) Calculate the start position startpos l of the spectrum data of the lth frequency point, where l represents the frequency point number.
[0027] 2) In the Tth sampling period, simultaneously select the spectrum data set x l (1, 2, …, B) and x l (1, 2, …, B) from the spectrum data subCarrierData of the two antennas at positions startpos l , startpos (l)1T +1, …, startpos (l)2T +B-1, and store them as a group of data in a unit of the spectrumDataSet data buffer.
[0028] 3) According to the vertical extension direction of the frequency point number 1 from small to large, then according to the horizontal extension direction of the symbol sampling period number T from small to large, the spectrum data of each frequency point of other signal collection periods are stored.
[0029] Further, the spectrum sensing module of each sensing terminal calculates the detection statistic of each frequency point spectrum data by applying the spectrum sensing algorithm, and then compares with the decision threshold to further determine whether each frequency point is occupied, and the specific processing process is:
[0030] 1) A group of data of one or T sampling periods of the lth frequency point is directly spliced into an array of two rows and N columns in the horizontal direction of the spectrumDataSet data buffer, and the first row data is the spectrum data of antenna 1, and the second row data is the spectrum data of antenna 2. Calculate the correlation matrix R of the array x , and the calculation formula is as follows:
[0031]
[0032] Where x1 and x2 are both 1xN arrays, corresponding to the spectrum data of antennas 1 and 2, [·] H represents the conjugate transpose of the matrix, and R x is a 2x2 complex matrix.
[0033] 2) According to the autocorrelation and cross-correlation values in the R x matrix, the detection statistic Det is calculated, and the formula is as follows:
[0034]
[0035] Where r 11 ,r 22 are the main diagonal elements of the R x matrix, representing the autocorrelation values of the spectrum data of the two antennas, r 12 ,r 21 are other elements in the R x matrix, representing the cross-correlation values of the spectrum data of the two antennas, and |·| represents the modulus of the complex number.
[0036] 3) The proportion of the number of frequency points that are misjudged as "occupied" in all frequency points of the first spectrum sensing to the total number of actual idle frequency points is used to approximate the false alarm probability, and then the decision threshold is calculated according to the target false alarm probability and the detection statistic calculation formula. The process is:
[0037] a) According to the detection statistic calculation formula, set the theoretical value of the decision threshold, denoted as threshold_theory;
[0038] b) According to the known idle frequency point information, spectrum sensing is performed to obtain a decision result, and a false alarm probability is calculated;
[0039] c) The target false alarm probability is compared with the current false alarm probability to fine-tune the decision threshold value, and a decision threshold temporary value is recorded, denoted as threshold_tmp;
[0040] d) After repeating steps b) and c) for a preset number of times, the average of a part of the decision threshold temporary values threshold_tmp is calculated as the decision threshold used in subsequent spectrum sensing;
[0041] 4) The detection statistic is compared with the current decision threshold, and if the detection statistic is greater than the decision threshold, it is determined that the frequency point is "occupied" by a user, otherwise, it is determined that the frequency point is "idle";
[0042] 5) Steps 1) to 4) are repeated until all frequency points in the frequency band are detected.
[0043] Further, the spectrum sensing module can correct the decision threshold according to the target false alarm probability and the current false alarm probability. The detection statistic Det is only related to the inter-antenna noise correlation coefficient p and is not related to the noise power. The value of Det is taken as the theoretical decision threshold value, an approximate value Th of the theoretical decision threshold is set, and the statistical probability of Det>Th is fixed and is called the false alarm probability P f . The value of Th is negatively correlated with the value of P f , that is, the larger the value of Th is, the smaller the value of P f is, and the smaller the value of Th is, the larger the value of P f is. The initial value of the decision threshold Th is set to 1, then spectrum sensing is performed according to the known idle frequency point information, the false alarm probability is calculated, and the decision threshold is corrected according to the target false alarm probability and the current false alarm probability. The process is as follows:
[0044] Step 1, the sensing terminal first acquires idle frequency point information, and then buffers the spectrum data of the current collected signals of the two receiving antennas;
[0045] Step 2, the sensing terminal calculates the detection statistic Det according to the above steps, and compares Det with the new decision threshold newThreshod;
[0046] Step 3, the idle frequency points are counted, and if Det is greater than the new decision threshold, the false alarm counter is incremented by 1. After scanning all idle frequency points in the spectrum, the current false alarm probability is equal to the value of the false alarm counter divided by the total number of scanned frequency points;
[0047] Step 4, a correction factor is determined, wherein the current value of the correction factor is determined according to the correction factor value of the previous sensing and the size relationship between the current false alarm probability and the target false alarm probability;
[0048] Step 5, new decision threshold newThreshod is equal to the correction factor multiplied by Th.
[0049] Further, the base station performs system spectrum resource management and coordinates the communication services of each terminal, wherein,
[0050] In the spectrum sensing service, the base station receives the spectrum sensing results of each sensing terminal in multiple sensing times and sends them to the edge computing device;
[0051] In the data communication service, the base station obtains the idle frequency point prediction result from the edge computing device, and determines the frequency point for data communication with the terminal, and in the case that the sensing terminal requests to obtain the idle frequency point information, the base station sends the idle frequency point information to the corresponding sensing terminal;
[0052] The edge computing device interacts with the base station for data, receives the spectrum sensing result and sends the idle frequency point prediction result;
[0053] The edge computing device groups and fuses the sensing results of each terminal according to its time interval, and the fusion rule is that for a certain frequency point, if the proportion of the number of sensing results "occupied" terminals to the total number of all sensing terminals is greater than or equal to a set proportion V, the fusion result is "occupied", otherwise the fusion result is "idle";
[0054] The edge computing device uses a long short-term memory neural network model as a basic model, and trains a binary prediction model according to historical sensing data and current spectrum sensing data;
[0055] The edge computing device further predicts the frequency point occupation in one or more subsequent time intervals according to the binary prediction model and the latest sensing result;
[0056] Finally, the idle frequency point prediction result in the required time interval is sent to the base station.
[0057] The application also proposes a sensing method of a spectrum sensing system based on the aforementioned discrete shared frequency band, which comprises the following steps:
[0058] Spectrum data is collected by multiple sensing terminals and spectrum sensing is performed, and the sensing result is sent to the base station;
[0059] The base station forwards the sensing result to the edge computing device for multiple sensing result fusion processing;
[0060] The edge computing device fuses multiple sensing results, predicts the spectrum occupation in multiple subsequent time steps through a pre-trained binary prediction model, and sends the spectrum prediction result to the base station;
[0061] Finally, the base station selects idle spectrum frequency points based on the spectrum prediction results to communicate with the sensing terminal;
[0062] Each sensing terminal internally collects two channels of radio frequency (RF) data. The RF data comes from RF signals received by two antennas. After being amplified and filtered by a dual-channel amplification and filtering circuit, the time-domain RF signal is sampled by a dual-channel digital-to-analog converter. Then, the in-phase quadrature signal demodulation module demodulates the time-domain RF signal to obtain IQ data. The IQ data is then passed to a secondary mixing module for secondary mixing, dividing the signal spectrum into two sub-frequency bands. A fast Fourier transform module performs fast Fourier transform on the signals of the two sub-frequency bands respectively to obtain the spectrum data of the two antennas. The spectrum sensing module selects and groups the spectrum data according to frequency points, and then performs spectrum sensing. Finally, the sensing result transmission module sends the spectrum sensing results and sensing time information to the base station.
[0063] The beneficial effects of this invention are as follows:
[0064] This invention employs a blind spectrum sensing algorithm to collect sufficient data once or multiple times within a sensing period, convert it to the frequency domain, extract data from each frequency point, and then apply the sensing algorithm. This algorithm can stably perform spectrum sensing under low signal-to-noise ratio conditions even when the amount of data at a single frequency point is very small.
[0065] The sensing terminal of this invention uses multi-antenna sensing technology, which can improve spectrum sensing sensitivity while being compatible with existing communication systems.
[0066] The sensing system of this invention uses multi-terminal sensing technology to fuse the sensing results of different terminals in an edge computing device, and then performs pattern analysis and idle spectrum prediction, which can improve the accuracy of spectrum sensing while meeting real-time requirements.
[0067] Other advantages, objectives, and features of the invention will be set forth in part in the description which follows, and in part will be apparent to those skilled in the art from the following examination, or may be learned from practice of the invention. The objectives and other advantages of the invention can be realized and obtained through the following description. Attached Figure Description
[0068] To make the objectives, technical solutions, and advantages of the present invention clearer, the preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings, wherein:
[0069] Figure 1 A schematic diagram of the spectrum sensing process in existing narrowband spectrum sensing technologies;
[0070] Figure 2 This is a schematic diagram of the structure of a discrete shared frequency band spectrum sensing system according to the present invention;
[0071] Figure 3 Structure diagram of internal data processing module of the perception terminal of the present application;
[0072] Figure 4 Selected frequency grouping diagram of the perception terminal of the present application;
[0073] Figure 5 Data processing flow diagram of the perception terminal of the present application;
[0074] Figure 6 Data processing flow diagram of the edge computing device of the present application;
[0075] Figure 7 Wireless signal spectrum sensing processing flow diagram of the spectrum sensing system of the present application for discrete shared frequency bands;
[0076] Figure 8 Signal mixing process diagram of the perception terminal of the present application;
[0077] Figure 9 Flow diagram of the selected frequency grouping of the perception terminal of the present application;
[0078] Figure 10 Threshold correction flow diagram of the perception terminal of the present application;
[0079] Figure 11 Grouping fusion process diagram of the edge computing device of the present application;
[0080] Figure 12 Fusion decision flow diagram of the edge computing device of the present application;
[0081] Figure 13 Training process diagram of the binary prediction model of the edge computing device of the present application;
[0082] Figure 14 Model evaluation loss value and model evaluation accuracy change curve of the training process of the binary prediction model of the edge computing device of the present application;
[0083] Figure 15 Spectrum prediction flow diagram of the edge computing device of the present application;
[0084] Figure 16 Perception time frequency prediction result and terminal perception time frequency point occupation result diagram of the edge computing device of the present application;
[0085] Figure 17 40-step continuous spectrum prediction accuracy diagram of the edge computing device of the present application. DETAILED DESCRIPTION
[0086] The present application is further explained in the following detailed description with reference to the accompanying drawings, wherein:
[0087] The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiments of the application and together with the description serve to explain the principles of the application. In the drawings:
[0088] The same or similar components in the drawings of the embodiments of the present application correspond to the same or similar components; in the description of the present application, it should be understood that if the terms "upper", "lower", "left", "right", "front", "back" and the like indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings, they are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the devices or elements referred to must have a particular orientation, be constructed and operated in a particular orientation, therefore the terms describing the positional relationship in the drawings are only for illustrative purposes, and cannot be understood as a limitation of the present application, for those skilled in the art, the specific meaning of the above terms can be understood according to the specific circumstances.
[0089] Please refer to Figures 2-17 , a spectrum sensing system and method for discrete shared frequency bands.
[0090] Embodiments
[0091] The present embodiment first gives a detailed structure of a spectrum sensing system and method for discrete shared frequency bands, as shown in Figure 2 , the system mainly includes at least one base station, at least one edge computing device and a plurality of sensing terminals, which are mainly used for spectrum sensing of discrete shared frequency bands, i.e. 223-235MHz frequency band. The system completes the spectrum sensing of discrete shared frequency bands on the basis of compatible communication systems. The sensing method is based on the algorithm of multi-antenna spectrum sensing, which performs narrowband signal sensing on single frequency points one by one to achieve the purpose of accurate and rapid detection.
[0092] The discrete shared frequency band contains 480 frequency points, each with a bandwidth of 25 kHz. The sensing system uses a subcarrier spacing of 2.5 kHz, each frequency point contains 10 subcarriers, the FFT point number is fixed at 4096, and the ADC sampling period is 0.4 ms. The sensing terminal is responsible for collecting spectrum data and completing spectrum sensing, and then sending the sensing result to the base station. The base station sends the received sensing result to the edge computing device for processing. The edge computing device fuses the sensing results of multiple terminals, then trains a binary prediction model and predicts the spectrum occupation of subsequent multiple time steps to realize idle spectrum prediction, and finally sends the spectrum prediction result to the base station. The base station can decide which idle frequency points to use to communicate with the terminal according to the spectrum prediction result.
[0093] The main configuration of the sensing terminal includes two receiving antennas (i.e. antenna 1 and antenna 2), a double-channel amplification and filtering circuit, a double-channel analog-to-digital converter (ADC) and an internal data processing module. The internal data processing module mainly includes an in-phase and quadrature signal (IQ) demodulation module, a secondary mixing module, a filtering and sampling module, a fast Fourier transform (FFT) module, a frequency selection and grouping module, a spectrum sensing module and a sensing result sending module. The module connection block diagram is shown in Figure 3 .
[0094] The corresponding explanations of the internal data processing module of the sensing terminal are as follows:
[0095] IQ demodulation module: The main function of the IQ demodulation module is to perform IQ demodulation on the 223-235 MHz frequency band radio frequency signal data to obtain IQ data. The frequency shift process is equivalent to a mixing process, and the mixing carrier frequency f c1 , i.e. the local carrier 1, is 229 MHz.
[0096] This module multiplies the two-channel ADC-acquired two-way radio frequency signal data with the local carrier 1 to obtain the IQ data of the antenna 1 and antenna 2-acquired signals. The local carrier 1 contains an I-channel carrier and a Q-channel carrier with a frequency of f c , i.e. cos(2πf c1 n s / f s1 ), -sin(2πf c1 n s / f s1 ), where n s = 1, 2, …, N s , N s represents the data length acquired within one sampling period (i.e. 0.4 ms) of the ADC, f s1 is the ADC sampling frequency, and f s1The lowest is 491.52MHz. The IQ data output by the IQ demodulation module is filtered and sampled to generate baseband signal IQ data, denoted as baseBandSignal[m], where m represents the antenna number and has a value of 1, 2.
[0097] The secondary mixing module mainly functions to perform secondary mixing of the baseband signal in baseBandSignal. The mixing carrier frequency f c21 , f c22 , i.e., the local carrier 2, is respectively 3MHz and -3MHz.
[0098] This module multiplies the IQ data of antenna 1 in baseBandSignal with the two carriers in local carrier 2 respectively, to obtain two sub-band mixed IQ data, i.e., the mixed IQ data of sub-band 1 and sub-band 2, denoted as mixFreqSignal[m1][1] and mixFreqSignal[m1][2], where m1 represents the antenna number and has a value of 1. The local carrier 2 is n1=1,2,…,N1, N1 is the length of the baseband signal IQ data, f c21 , f c22 , f 6 , f 6 , f s2 , f s2 The lowest is 20.48MHz. The IQ data of sub-band 1 mainly retains the information of the frequency band from -6MHz to 0Hz in the baseband signal, and the IQ data of sub-band 2 mainly retains the information of the frequency band from 0Hz to 6MHz in the baseband signal.
[0099] Similarly, the IQ data of antenna 2 in baseBandSignal is multiplied with the two carriers in local carrier 2 respectively, to obtain the IQ data of sub-band 1 and sub-band 2 corresponding to antenna 2, denoted as mixFreqSignal[m2][1] and mixFreqSignal[m2][2], where m2 represents the antenna number and has a value of 2.
[0100] Filtering and sampling module 1 and filtering and sampling module 2: The filtering and sampling module 1 and the filtering and sampling module 2 are respectively used to filter out irrelevant frequency signals from the output ends of the IQ demodulation module and the secondary mixing module, and to sample and reduce the IQ data rate.
[0101] The filter sampling module 1 uses a Butterworth low-pass digital filter to filter the IQ data output by the IQ demodulation module, and the passband cutoff frequency range is greater than 6MHz and less than 8MHz; a sampling module is used to sample the filtered IQ data, and the sampling multiple is equal to the ADC sampling frequency divided by the FFT point number (i.e. 4096) and then divided by the subcarrier spacing (i.e. 2.5kHz) and then divided by 2. The filtered and sampled IQ data is the baseband signal IQ data baseBandSignal[m].
[0102] The filter sampling module 2 uses a Butterworth low-pass digital filter to filter the IQ data output by the twice mixing module, i.e. mixFreqSignal[m][n f ], where m represents the antenna number and has a value of 1, 2; n f represents the sub-band number and has a value of 1, 2. The passband cutoff frequency range is greater than 3MHz and less than 4MHz; a sampling module is used to sample the filtered IQ data, and the sampling multiple is 2. The filtered and sampled IQ data is recorded as subBandSignal[m][n f ].
[0103] FFT module: This module is used to perform 4096-point FFT transformation on the two-antenna IQ data in sub-band 1 and sub-band 2 in subBandSignal[m][n f ], with a subcarrier spacing of 2.5KHz, to obtain the spectral data of antennas 1 and 2, recorded as subCarrierData[m][n f ], and similarly, where m represents the antenna number and has a value of 1, 2; n f represents the sub-band number and has a value of 1, 2.
[0104] Frequency selection grouping module: The frequency selection grouping takes a single frequency point bandwidth B as the grouping reference, and in this embodiment, 10 subcarriers are selected as a single frequency point bandwidth. The spectral data corresponding to the two antennas in sub-band 1 and sub-band 2 in subCarrierData is frequency-selected and grouped. After grouping, the spectral data of different groups carries the spectral information of different frequency points, and the spectral data corresponding to the two antennas within the same group contains one or more sampling periods. The frequency selection grouping schematic diagram is shown in Figure 4 , and the processing process is as follows:
[0105] Step 1: Calculate the starting position startpos l of the spectral data of the lth frequency point, where l represents the frequency point number. In sub-band 1, the frequency point l = 0, 2,..., 239. In sub-band 2, the frequency point l = 240, 241,..., 479.
[0106] Step 2: Within the Tth sampling period, simultaneously select the position startpos from the spectrum data subCarrierData of the two antennas. l ,startpos l +1,…,startpos l +9 spectrum data set x (l)1T (1,2,…,10) and x (l)2T (1,2,…,10) is stored as a set of data in a unit of the spectrumDataSet data buffer. Every 10 consecutive 2.5KHz subcarriers correspond to a 25KHz frequency point.
[0107] Step 3: Store the frequency point data in a vertical expansion direction from smallest to largest according to the frequency point number l, with a maximum of 480 units. Then, store the frequency point spectrum data of other signal acquisition cycles in a horizontal expansion direction from smallest to largest according to the symbol sampling period number T.
[0108] Spectrum Sensing Module: This module applies a spectrum sensing algorithm to calculate the detection statistics of the spectrum data at each frequency point, then compares them with a decision threshold to determine whether each frequency point is occupied. The process includes the following steps:
[0109] Step 1: As Figure 4 As shown, a set of data from one or T sampling periods of the l-th frequency point is retrieved horizontally from the spectrumDataSet data buffer and directly concatenated into a two-row, N-column array, where N = 10T. The first row of this array contains the spectrum data of antenna 1, and the second row contains the spectrum data of antenna 2. The correlation matrix R of this array is calculated. x The calculation formula is as follows:
[0110]
[0111] Here, x1 and x2 are both 1×N arrays, corresponding to the spectrum data of antenna 1 and antenna 2, [·] H R represents the conjugate transpose of a matrix. x It is a 2×2 complex matrix.
[0112] Step 2: According to R x The autocorrelation and cross-correlation values in the matrix are used to calculate the detection statistic Det, as shown in the following formula:
[0113]
[0114] Where, r 11 ,r 22 It is R x The main diagonal elements of the matrix represent the autocorrelation values of the spectral data from the two antennas, r. 12 ,r 21R is R x Other elements in the matrix represent the cross-correlation values of the two-antenna spectrum data, and |·| represents the modulus of the complex number.
[0115] Step 3: The decision threshold is closely related to the false alarm probability. In this application, the proportion of the number of frequency points that are misjudged as "occupied" in the total number of actual free frequency points in the 480 frequency points of the primary spectrum sensing is used to approximate the false alarm probability. According to the target false alarm probability and the detection statistic calculation formula, the decision threshold is obtained, and the method steps are as follows:
[0116] First step, set the theoretical value of the decision threshold according to the detection statistic calculation formula, denoted as threshold_theory.
[0117] Second step, perform spectrum sensing according to the known free frequency point information, obtain the decision result as described in step 4, and calculate the false alarm probability.
[0118] Third step, compare the size of the target false alarm probability and the current false alarm probability, fine-tune the decision threshold value, and record the temporary value of the decision threshold, denoted as threshold_tmp.
[0119] Fourth step, after repeating the second step and the third step a certain number of times, calculate the mean value of a part of the decision threshold temporary values threshold_tmp as the decision threshold used in subsequent spectrum sensing.
[0120] Step 4: Compare the detection statistic with the current decision threshold. If the detection statistic is greater than the decision threshold, it is determined that the frequency point is "occupied" by the user, otherwise, it is determined that the frequency point is "free".
[0121] Step 5: Repeat steps 1 to 4 until all frequency points in the frequency band are detected.
[0122] Sensing result sending module: this module adds the sensing results of 480 frequency points in the frequency band and the sensing time node information together for storage, and then sends the stored sensing results and time node information to the base station.
[0123] The internal data processing flow of the sensing terminal is as shown in Figure 5 .
[0124] Step 1, the sensing terminal internally collects two-way radio frequency data. The radio frequency data comes from two antennas receiving radio frequency signals, which are amplified and filtered by a double-channel amplification and filtering circuit, and then sampled by an ADC to obtain a time-domain radio frequency signal, denoted as a_rx_waveform. The minimum sampling frequency of the ADC is 491.52MHz. As shown in Figure 5 Step 1.
[0125] Step 2, multiply the digital signal a_rx_waveform collected by the ADC with the local carrier 1, and perform IQ demodulation, which can move the 223-235MHz frequency band signal to zero frequency at one time to obtain baseBandSignal baseband signal IQ data, and then perform filtering and sampling to reduce the IQ data rate. For example Figure 5 Step 2.
[0126] Step 3, multiply the baseBandSignal baseband signal IQ data with the local carrier 2, and perform secondary mixing, which divides the signal spectrum into two sub-bands. Low-pass filter and sample the IQ signal after mixing to adapt to the FFT data rate. For example Figure 5 Step 3.
[0127] Step 4, perform 4096-point FFT transformation on the subBandSignal signals of the two sub-bands respectively to obtain the spectrum data subCarrierData of the two antennas, and store the spectrum data. For example Figure 5 Step 4.
[0128] Step 5, group the spectrum data of 480 frequency points of the two antennas according to the frequency point selection, and store the grouped data. The same group of data after grouping only contains the spectrum data of the same frequency point of the two antennas. For example Figure 5 Step 5.
[0129] Step 6, apply the spectrum sensing method to perform spectrum sensing, and send the spectrum sensing result together with the sensing time information to the base station. For example Figure 5 Step 6.
[0130] Base station: In the spectrum sensing system of the present application, the main functions of the base station include system spectrum resource management and coordination of communication services of each terminal.
[0131] In the spectrum sensing service, the base station receives the spectrum sensing results of multiple sensing times from each sensing terminal, and sends them to the edge computing device.
[0132] In the data communication service, the base station obtains the idle frequency point prediction result from the edge computing device, and decides which frequency points to use for data communication with the terminal. If the sensing terminal requests to obtain the idle frequency point information, the idle frequency point information is sent to the corresponding terminal.
[0133] Edge computing device: The edge computing device interacts with the base station to receive the spectrum sensing result and send the idle frequency point prediction result. Its core functions include four: sensing result fusion, spectrum rule analysis, spectrum prediction, and sending idle spectrum.
[0134] The main functions of the edge computing device and their corresponding explanations are as follows:
[0135] Sensing Result Fusion: The sensing results of each terminal are grouped and fused according to their time intervals. The fusion rule is that within the same time interval, for a certain frequency point, if the proportion of the number of terminals with the sensing result of "occupation" to the total number of all sensing terminals is greater than or equal to a set proportion V, then the fusion result is "occupation"; otherwise, the fusion result is "idle".
[0136] Spectrum pattern analysis: A binary prediction model is trained using a long short-term memory (LSTM) neural network model based on historical sensing data and current spectrum sensing data.
[0137] Spectrum prediction: Based on the latest sensing results, predict and store the frequency occupancy in one or more subsequent time intervals.
[0138] Sending idle spectrum: Based on the base station's command, the predicted idle frequency points within the required time interval are sent to the base station.
[0139] Data flow of edge computing devices: such as Figure 6 As shown:
[0140] Step 1: Receive spectrum sensing results from each sensing terminal at the base station, and group and store them according to sensing time. Different groups represent different sensing times, and each group contains only the sensing results from different terminals within the same sensing time interval. For example... Figure 6 Step 1.
[0141] Step 2: Fuse the sensing results from different sensing terminals within the same group to obtain a fusion result of 480 frequency points. Then, fuse all stored groups sequentially and store the fusion results. For example... Figure 6 Step 2.
[0142] Step 3: Load the historical fusion perception results dataset and use this dataset to train a binary spectrum prediction model. For example... Figure 6 Three steps.
[0143] Step 4: Use the most recently fused sensing results and the trained spectrum prediction model to perform spectrum prediction and output the idle frequency prediction results. For example... Figure 6 The middle 4 steps.
[0144] Step 5: Send the idle frequency prediction results to the base station, which then allocates idle spectrum resources for communication based on these results. For example... Figure 6 Five steps.
[0145] This embodiment provides a more detailed description of the invention based on a real-world wireless scenario. In discrete shared frequency bands, there are situations where unknown communication devices randomly occupy certain frequency points, meaning that different users use certain frequency points according to different patterns.
[0146] The spectrum sensing of wireless signals is essentially a process of a series of data processing of wireless signals, and finally obtaining a sensing result. In the embodiment, the spectrum sensing process includes that the sensing terminal performs the spectrum sensing process, the base station interacts with the sensing terminal and the edge computing device, and the edge computing device performs a data processing process. The sensing terminal is mainly responsible for spectrum sensing and sends the sensing result to the base station, which is then forwarded to the edge computing device. The edge computing device receives the spectrum sensing result, then analyzes the spectrum occupation rule, realizes idle spectrum prediction, and sends the spectrum prediction result to the base station. The spectrum sensing processing block diagram of wireless signals is shown in Figure 7
[0147] In the embodiment, the sensing terminal is set according to a fixed 4096-point FFT length, a 2.5 kHz subcarrier spacing, and a sampling period of 0.4 ms. The IQ demodulation module and the filtering and sampling module convert the 223-235 MHz frequency band radio frequency signal data into baseband signal IQ data, denoted as baseBandSignal, with a bandwidth of 12 MHz. The 4096-point FFT cannot directly process the baseband signal data, and a second mixing module is required to convert the baseband signal IQ data into two sub-band IQ data for processing after filtering and sampling. The sub-band IQ data is denoted as subBandSignal. The sensing system processes the 223-235 MHz frequency band sensing result data in multiple sensing periods, continuously completes spectrum sensing, then analyzes the spectrum rule, and further realizes spectrum prediction, and finally outputs the frequency point occupation time diagram.
[0148] Sensing terminal: The sensing terminal is responsible for collecting signal data of two receiving antennas, then performing a series of time domain and frequency domain data processing, completing spectrum sensing, and sending the sensing result to the base station.
[0149] Key part of internal data processing of sensing terminal:
[0150] IQ demodulation and filtering and sampling: The IQ demodulation module first performs IQ demodulation on the 223-235 MHz frequency band radio frequency time domain signal data collected by the ADC, which is equivalent to a first mixing. In the embodiment, the ADC sampling frequency is 491.52 MHz, and the sampling period is 0.4 ms. Since the ADC collected radio frequency signal is a real signal, its spectrum is conjugate symmetric about zero frequency. The IQ demodulation module can realize one-time movement of the 223-235 MHz frequency band signal spectrum to zero frequency. In order to reduce the data rate, low-pass filtering and sampling are required to obtain baseband signal IQ data.
[0151] The specific implementation process is as follows:
[0152] Step 1: Multiply the real signal data of the two antennas with the local carrier 1 respectively to perform IQ demodulation and obtain IQ demodulation data. The local carrier 1 contains cos(2πf c1 ns / f s1 ), -sin(2πf c1 n s / f s1 ), where n s = 1, 2, …, N s , N s represents the length of data collected in one sampling period of the ADC (i.e. 0.4ms), f s1 is the ADC sampling frequency, and f s1 is 491.52MHz. In this embodiment, N s is 196608. f c1 is the center frequency of the 223-235MHz frequency band, and is 229MHz.
[0153] Step 2: In this embodiment, a 6thorder Butterworth low-pass digital filter is used to low-pass filter the IQ demodulation data, and the passband cutoff frequency used by the filter is 7MHz.
[0154] Step 3: In this embodiment, a 24-fold digital sampler is used to sample the filtered IQ data. After sampling, the data rate is 8192 / sampling period, which can represent a signal with a subcarrier spacing of 2.5kHz and a bandwidth of 12MHz without distortion, and is exactly 2 times the data rate of the FFT, and the sampled data is the baseband signal IQ data baseBandSignal.
[0155] Second mixing and filtering sampling: the baseband signal baseBandSignal has a bandwidth of 12MHz and a subcarrier spacing of 2.5kHz, and the number of FFT points is too large, so a second mixing module is used to divide the baseband signal spectrum into two sub-frequency bands for processing, i.e. sub-frequency band 1 and sub-frequency band 2. Sub-frequency band 1 mainly retains the -6MHz to 0Hz frequency band information in baseBandSignal, and sub-frequency band 2 mainly retains the 0Hz to 6MHz frequency band information in baseBandSignal. The second mixing module mixes the baseband signal, and after filtering and sampling, the data rate matches the number of FFT points. The signal mixing process is shown in Figure 8 .
[0156] The specific implementation process is as follows:
[0157] Step 1: Multiply the baseBandSignal baseband signal IQ data with the two complex carriers in the local carrier 2 to obtain mixed IQ data mixFreqSignal[m][n f ] of sub-frequency band 1 and sub-frequency band 2, respectively, where m represents the antenna number and has a value of 1, 2; n f represents the sub-frequency band number and has a value of 1, 2. The local carrier 2 is n1 = 1, 2, …, N1, N1 is the length of baseband signal IQ data, f c21 , f c22 = 3 x 10 6 and -3 x 10 6 , f s2 is the baseband digital sampling frequency, in the embodiment, f s2 = 20.48MHz.
[0158] Step 2: The signal after the second mixing contains irrelevant frequency band signals, and the filtered IQ data can not be easily disturbed by irrelevant frequency band signals during subsequent sampling due to aliasing. In the embodiment, a 6thorder Butterworth low-pass digital filter is used to low-pass filter the mixed IQ data mixFreqSignal of sub-band 1 and sub-band 2, and the passband cutoff frequency used by the filter is 3.5MHz.
[0159] Step 3: Use a 2x digital sampler to sample the filtered IQ data of step 2 respectively, reduce the data rate, and the sampled IQ data is recorded as subBandSignal[m][n f ], the data length matches the FFT point number of the system.
[0160] FFT transform: 4096-point FFT transform is performed on the IQ data of the two antennas in sub-band 1 and sub-band 2 in subBandSignal respectively, to obtain the spectrum data of antennas 1 and 2, recorded as subCarrierData[m][n f ], and similarly, m represents the antenna number, which is 1, 2; n f represents the sub-band number, which is 1, 2.
[0161] Frequency selection grouping: the frequency selection grouping takes a single frequency point bandwidth as the grouping reference, i.e. 10 subcarriers, and the spectrum data of the two antennas in sub-band 1 and sub-band 2 in subCarrierData is frequency-selected and grouped, after grouping, the spectrum data of different groups carries the spectrum information of different frequency points, and the same group contains the spectrum data of the two antennas corresponding to one or more sampling periods. The frequency selection grouping process is shown in Figure 9 .
[0162] The specific implementation process is as follows:
[0163] Step 1: Obtain the spectrum data subCarrierData of the two antennas in sub-band 1 and sub-band 2.
[0164] Step 2: Calculate the start position startpos l of the spectrum data of the lth frequency point in the two sub-bands, the calculation method is as follows:
[0165] startposl = N fft / 2 + mod(l, 240) x C (3) valid / 2 + mod(l, 240) x C (3)
[0166] where N fft is the FFT point number, N valid represents the effective data length in sub-band 1 or sub-band 2, same as 2400 effective sub-carriers, C represents the single frequency point data point number, which is 10, and l is the frequency point number, mod(l, 240) is the remainder of l divided by 240, sub-band 1 frequency point l = 0, 2,..., 239. Sub-band 2 frequency point l = 240, 241,..., 479.
[0167] Step 3: Prepare a two-dimensional data buffer spectrumDataSet, which is expanded from small to large according to the number of signal acquisition periods in the horizontal direction and according to the frequency point number in the vertical direction. Each unit can store a two-row 10-column array, and the array elements contain the spectrum data of the same frequency point from two antennas.
[0168] Step 4: In the Tth sampling period, select the spectrum data with positions startpos l , startpos l +1,..., startpos l +9 from the spectrum data subCarrierData of the two antennas to form a two-row 10-column array and store it in the (l, T) unit of the spectrumDataSet data buffer.
[0169] Step 5: Store the spectrum data of each frequency point in the expansion direction from small to large according to the frequency point number, and the maximum is 480 units. Then store the spectrum data of other sampling periods in the expansion direction from small to large according to the number of signal sampling periods.
[0170] Spectrum sensing: apply the spectrum sensing algorithm to calculate the detection statistics of the spectrum data of each frequency point, and then compare it with the decision threshold to determine whether each frequency point is occupied.
[0171] The implementation process of the sensing algorithm is as follows:
[0172] Step 1, take out a group of data of one or T sampling periods of the lth frequency point from the spectrumDataSet data buffer in the horizontal direction and directly splice it into a two-row N-column array, N = 10T, T = 1 in this embodiment. The first row of data is the spectrum data of antenna 1, and the second row of data is the spectrum data of antenna 2. Calculate the correlation matrix R x of the array, R xR is a 2x2 complex matrix, where each element is an autocorrelation value or a cross-correlation value of the two-antenna spectrum data.
[0173] Step 2: According to R x The autocorrelation value and the cross-correlation value in the matrix calculate a detection statistic Det, as follows:
[0174]
[0175] Where, r 11 ,r 22 is the main diagonal element of R x , representing the autocorrelation value of the two-antenna spectrum data, r 12 ,r 21 is the non-main diagonal element of R x , representing the cross-correlation value of the two-antenna spectrum data, and |·| represents the modulus of a complex number.
[0176] Step 3: Compare the detection statistic with a decision threshold Th. If Det>Th, it is determined that the frequency point is "occupied" by a user, and the sensing result is "1"; otherwise, it is determined that the frequency point is "idle", and the sensing result is "0".
[0177] Step 4: Repeat steps 1 to 3 until all frequency points in the frequency band are detected, and store the sensing result in the buffer SSoutcomeSet.
[0178] Sensing result sending: Add the sensing result in the sensing result buffer SSoutcomeSet and the sensing time node information together for storage, and then send the sensing result and the sensing time node information to the base station.
[0179] Third part: Decision threshold correction process
[0180] In the zero-mean Gaussian white noise scenario, when there is no user signal, the noise power of the two receiving antennas of the sensing terminal is represented as P n , and the autocorrelation value of the antenna noise data is P n . The noise data on the two antennas has weak correlation, and the cross-correlation value can be represented as:
[0181]
[0182] Where, ρ represents the correlation coefficient, which is a random number related only to the noise property and unrelated to the noise power, and it is considered that |ρ|<1. Replace the autocorrelation value and the cross-correlation value in the above detection statistic Det with the noise power P n and the correlation coefficient ρP n , and obtain:
[0183]
[0184] Thus, it is determined that when there is no user signal, the detection statistic is only related to the inter-antenna noise correlation coefficient p and is not related to the noise power, and the Det value at this time can be used as a theoretical decision threshold value. The correlation coefficient p is not a fixed value and is difficult to accurately estimate, and thus an approximate value Th of the theoretical decision threshold can be set, which is a fixed value and is not related to the noise power.
[0185] If the distribution of the noise is not changed, for the "idle" frequency points, in the embodiment, the statistical probability that Det>Th can be determined to be fixed and unchanged, which is referred to as a false alarm probability P f . The false alarm probability is an important indicator for measuring the performance of spectrum sensing, and indicates the probability that the sensing system incorrectly determines the frequency spectrum that is not occupied by a user as "occupied". The value of Th is negatively related to the value of P f , that is, the greater the value of Th is, the smaller the value of P f is, and the smaller the value of Th is, the greater the value of P f is.
[0186] In the embodiment, the value of the decision threshold Th is first set to 1, then spectrum sensing is performed according to the known idle frequency point information, the false alarm probability is calculated, and the decision threshold is corrected according to the target false alarm probability and the current false alarm probability.
[0187] The specific process of threshold correction is as follows: Figure 10
[0188] Step 1, turn on the decision threshold correction function, and the sensing terminal first acquires idle frequency point information, and then buffers the spectrum data of the current collected signals of the two receiving antennas;
[0189] Step 2, the sensing terminal calculates the detection statistic Det according to the above steps, and compares Det with the new decision threshold newThreshod.
[0190] Step 3, idle frequency points are counted, and if Det is greater than the new decision threshold, the false alarm counter is incremented by 1. After scanning all idle frequency points of the spectrum, the current false alarm probability is equal to the value of the false alarm counter divided by the total number of scanned frequency points.
[0191] Step 4, the current value of the correction factor is related to the previous perceived correction factor value and the current false alarm probability and the size of the target false alarm probability. If the current false alarm probability is greater than 1.1 times the target false alarm probability, the correction factor is added by 0.1 / s. If the current false alarm probability is less than 0.9 times the target false alarm probability, the correction factor is reduced by 0.1 / s. If the last false alarm probability and the current false alarm probability are both greater than the target value or the last false alarm probability and the current false alarm probability are both less than the target value, s remains unchanged. If the last false alarm probability is greater than the target value and the current false alarm probability is less than the target value, or the last false alarm probability is less than the target value and the current false alarm probability is greater than the target value, s is equal to twice the last s value.
[0192] Step 5, new decision threshold newThreshod is equal to the correction factor multiplied by Th. In the threshold correction stage, 100 times of spectrum sensing are performed, and the average of the threshold correction factors from the 81st to the 100th is calculated as the final correction factor value.
[0193] Fourth part: edge computing device processing process
[0194] After the edge computing device receives the sensing result, it first groups according to the sensing time information, and then fuses the sensing results D i (1, 2, …, 480) containing 480 frequency point results, the value is 0 or 1, i represents the number of sensing terminals, to obtain the fusion result D ot (1, 2, …, 480), t is a sequence number related to the sensing time, and the fused result D ot (1, 2, …, 480) is stored according to the sequence number t. Figure 11
[0195] The same group of sensing result data is fused, that is, in the same time interval, for a certain frequency point, as long as the number of sensing terminals with sensing result "1" accounts for more than or equal to V of the total number of sensing terminals, the fusion result is "1", indicating that the frequency point is "occupied", otherwise, the fusion result is "0", indicating that the frequency point is "idle". In this embodiment, the total number of sensing terminals is 5, and V is equal to 0.6.
[0196] The specific implementation process of the fusion decision is as shown in Figure 12
[0197] Step 1: obtain a group of grouped sensing result information, including the sensing results of multiple terminals.
[0198] Step 2: count the total number of terminals terminals1 with sensing result "1" for frequency point number i and the total number of all sensing terminals terminalsAll.
[0199] Step 3: Calculate terminals1 / terminalsAll and compare it with the ratio V, if terminals1 / terminalsAll is greater than or equal to the ratio V, the fusion result is "1", that is, it is considered that the frequency point is "occupied", otherwise the fusion result is "0".
[0200] Step 4: Fuse the sensing results of other frequency point numbers according to steps 2-3, and store the fusion results of 480 frequency points.
[0201] Step 5: Fuse the sensing results of each frequency point in other sensing time intervals, i.e. other groups, according to steps 1-4.
[0202] Step 6: Spectrum rule analysis. Train a binary prediction neural network model according to the historical data of spectrum sensing results and the current sensing results.
[0203] In this embodiment, the LSTM neural network model is used for training. The LSTM has a memory unit that can store information for a long time, so that the model can capture long-distance dependencies in sequences. The LSTM also has input gates, forget gates and output gates, etc., so that the model can better process long sequence data. Therefore, the LSTM model can realize the prediction of the spectrum usage at the next time step based on a large amount of historical data.
[0204] First step, load the fusion result data. The fusion result data is an array data_table with a dimension of Mx480, and the array elements are 0 or 1. In data_table, each column from left to right corresponds to frequency point numbers 0 to 479, and each row from top to bottom corresponds to a sensing time sequence number 0 to M-1. Convert data_table to float type data input_data. Extract data from the zth row to the z+tw-1th row in input_data as a training sequence and store it in seq(z,:,:), where ":" represents traversing the entire data space in this dimension of the array, z=0,1,…,M-t w -1, the three dimensions of seq are M-t w , t w and 480 in size. Extract the z+t w th row result from input_data as a label and store it in label(z,:), the two dimensions of label are (M-t w ) and 480 in size. Store the training sequence seq(z,:,:), and the corresponding label(z,:) in the dataset SSDataSet. In this embodiment, M is equal to 1090, and t w is equal to 50.
[0205] Second step, remove the last 40 data sets from the SSDataSet, each data set contains seq and the corresponding label. The removed data set is used as the test set TestDataSet for final prediction. The remaining data sets in the SSDataSet are randomly selected according to the ratio of 9:1 and stored in the training set TrainDataSet and the test set ValidDataSet respectively. Then TrainDataSet, ValidDataSet are added to the iterators train_loader and valid_loader respectively according to the batch_size size.
[0206] Third step, set the input and output feature number, hidden layer size, LSTM layer number and other model parameters, create the LSTM model, and the model parameters are shown in Table 1.
[0207] Table 1
[0208] Parameter name Parameter value Input feature number (input_size) 480 Output feature number (output_size) 480 Activation function Sigmoid function Hidden layer size (hidden_size) 50 LSTM layer number (num_layers) 4 Initial learning rate (learning_rate) 0.005 Optimizer Adam Loss function Binary cross-entropy function
[0209] Fourth step, randomly extract seq and label data from train_loader and store them in X_batch and Y_batch respectively as sequence set and label set during training. Send X_batch into the created model to get the output result outputs, which is the value after mapping through the S-shaped growth curve function (referred to as sigmoid function) as the activation function, and its value is between 0 and 1. Then pass outputs and Y_batch into the binary cross-entropy loss function (referred to as BCELoss function) to calculate the loss value.
[0210] Fifth step, calculate the input gate, forget gate, output gate, candidate memory cell and linear layer gradient based on the optimizer and loss function. The optimizer will subtract the corresponding gradient multiplied by the learning rate, so as to update the parameters.
[0211] Sixth step, after completing 5 training for all samples, extract seq and label data from valid_loader and store them in X_batch and Y_batch respectively as sequence set and label set during model evaluation. Calculate the model evaluation loss value and evaluation accuracy using the current trained model, loss function and validation set data to evaluate the model training situation.
[0212] The model evaluation accuracy calculation method is as follows:
[0213] The outputs in the model evaluation are mapped to 0, 1 binary, stored in map_outputs, and map_outputs and Y_batch have the same dimension of batch_size x 480, the same data type, and all elements are 0 or 1. The absolute value of map_outputs-Y_batch is calculated, and then the sum of all elements of the result is divided by (batch_size x 480) to obtain the error rate errrate, and finally the accuracy is equal to 1-errrate.
[0214] Step 7: The whole training process includes the process of training, evaluation, re-training, and re-evaluation. When the loss value of the model evaluation is lower than 0.058, the training is completed, the model is saved, and the training is ended. When the number of model evaluation reaches the maximum training number, the training fails, and the training is ended. The change curve of the model evaluation loss value and accuracy during the training process is shown in FIG. 6. Figure 14
[0215] Step 7: Using the trained model, the spectrum occupation of the subsequent time steps is predicted according to the latest spectrum sensing results of multiple different time nodes, and the spectrum occupation is stored. In this embodiment, the first data set TestFirstSet in the test data set TestDataSet is used to complete single-step prediction, and the next time step data result is predicted using TestFirstSet and the current prediction result, 40-step continuous prediction is realized, and the prediction result is obtained.
[0216] Spectrum prediction step: as shown in FIG. 7 Figure 15
[0217] Step 1: Load the test data set TestDataSet divided during data preprocessing. Extract the first training data set in TestDataSet, that is, seq(0, :, :), and store it in TestFirstSet. The dimension of TestFirstSet is t w x 480.
[0218] Step 2: Create an LSTM model according to the model parameters during training, and load the trained model.
[0219] Step 3: Send TestFirstSet into the loaded model for prediction to obtain the prediction value, which is a value between 0 and 1. According to the value size, it is mapped to 0, 1 binary, and the mapped result is saved in oneoutcome. The dimension of oneoutcome is 1 x 480.
[0220] The fourth step is to extract the data from the second row to the last row of the TestFirstSet, splice oneoutcome at the tail of the data, assign the data to the TestFirstSet, and then repeat the third step to predict the value of the next time step.
[0221] The fifth step is to repeat the third and fourth steps, and when the prediction step reaches 40, the prediction is ended, and the frequency point occupation time prediction graph is obtained, as shown in the left part of figure 1. Figure 16 In the process of sensing, the sensing terminal may generate a false alarm frequency point, as shown in the right part of figure 1. Figure 16 The edge computing device can better eliminate the false alarm frequency point when performing spectrum prediction.
[0222] The prediction result is compared with the actual spectrum occupation, and the 40-step continuous spectrum prediction accuracy curve is as shown in figure 2. Figure 17
[0223] Step 8: Send the idle frequency point prediction result. According to the command of the base station, the predicted idle frequency point and the corresponding time interval are sent to the base station, and if the sensing terminal requests to obtain the idle frequency point information, the base station is responsible for sending the idle frequency point information to the corresponding terminal.
[0224] The application is based on a communication network constructed by a two-antenna communication device, a spectrum sensing system is established for discrete shared frequency bands, and the spectrum sensing method can effectively detect the user occupation of 480 frequency points in the 223-235MHz frequency band. The sensing terminal performs spectrum sensing, and sends the sensing result to the base station, and the base station forwards it to the edge computing device for spectrum analysis and prediction to obtain the spectrum occupation within a period of time. Compared with the traditional spectrum sensing method, the narrowband spectrum sensing method with lower complexity is used to ensure the high detection accuracy of the spectrum sensing, the data fusion and spectrum prediction of the edge computing device can meet the real-time spectrum analysis demand, and part of the false alarm frequency points can be eliminated, which provides guarantee for improving the spectrum utilization rate in the frequency band.
[0225] Finally, it should be explained that the above embodiments are only used to illustrate the technical solutions of the present application but not limit the present application. Although the present application has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solutions of the present application can be modified or replaced by equivalents without departing from the purpose and scope of the present application, and all of them should be covered in the scope of the claims of the present application.
Claims
1. A spectrum sensing system for discrete shared bands, characterized by: The system comprises at least one base station, at least one edge computing device and a plurality of sensing terminals, each of which is provided with at least two receiving antennas, a dual-channel amplification and filtering circuit, a dual-channel digital-to-analog converter and an internal data processing module, the internal data processing module comprises, in sequence, a same-phase quadrature signal demodulation module, a secondary mixing module, a filtering and sampling module, a fast Fourier transform module, a frequency selection and grouping module, a spectrum sensing module and a sensing result sending module, wherein, The plurality of sensing terminals collect spectrum data and perform spectrum sensing, and send the sensing results to the base station, which then forwards the sensing results to the edge computing device for fusion processing of the plurality of sensing results. The edge computing device predicts the spectrum occupation of subsequent multiple time steps by using a pre-trained binary prediction model after fusing the plurality of sensing results, and sends the spectrum prediction results to the base station. The base station filters the idle spectrum frequency points according to the spectrum prediction results and communicates with the sensing terminals. Each sensing terminal internally collects two-way radio frequency data. The radio frequency data is received by two antennas, and after being amplified and filtered by the dual-channel amplification and filtering circuit, the dual-channel digital-to-analog converter is used for sampling to obtain time domain radio frequency signals. The IQ demodulation module demodulates the time domain radio frequency signals to obtain IQ data. The IQ data is transmitted to the secondary mixing module for secondary mixing, and the signal spectrum is divided into two sub-frequency bands. The fast Fourier transform module performs fast Fourier transform on the signals of the two sub-frequency bands respectively to obtain the spectrum data of the two antennas. The spectrum data is selected and grouped by frequency point by the spectrum sensing module, and then spectrum sensing is performed by the spectrum sensing module. Finally, the spectrum sensing results and sensing time information are sent to the base station by the sensing result sending module.
2. A spectrum sensing system for discrete shared bands as claimed in claim 1 wherein: The in-phase quadrature signal demodulation module in each sensing terminal demodulates the discrete shared frequency band radio frequency signal to obtain IQ data, wherein the in-phase quadrature signal demodulation module respectively mixes the two-way radio frequency signal data of the antenna 1 and the antenna 2 collected by the double-channel module converter with a mixing carrier frequency f c1 to obtain the collected IQ data of the two-way signal, and the mixing carrier frequency f c1 is denoted as a local carrier 1, which includes an I-channel carrier and a Q-channel carrier with a frequency f c , which are respectively denoted as cos(2πf c1 n s / f s1 ) and -sin(2πf c1 n s / f s1 ), wherein n s =1, 2, …, N s , N s represents the data length collected in one sampling period of the ADC, and f s1 is the ADC sampling frequency; the IQ data output by the IQ demodulation module generates a baseband signal IQ data after filtering and sampling, which is denoted as baseBandSignal[m], wherein m represents the antenna number, and the value is 1, 2.
3. A spectrum sensing system for discrete shared bands as claimed in claim 2, wherein: The secondary mixing module of each sensing terminal mixes the obtained baseband signal in the IQ data baseBandSignal with a secondary mixing carrier frequency f c21 , f c22 , denoted as local carrier 2, wherein, The secondary mixing module multiplies the baseBandSignal of the antenna 1 with two carriers f c21 , f c22 of the local carrier 2 respectively, to obtain the mixed IQ data of the sub-band 1 and the sub-band 2 corresponding to the antenna 1, denoted as mixFreqSignal[m1][1] and mixFreqSignal[m1][2], wherein m1 represents the antenna number and has a value of 1. The secondary mixing module multiplies the baseBandSignal of the antenna 2 with two carriers f c21 , f c22 of the local carrier 2 respectively, to obtain the mixed IQ data of the sub-band 1 and the sub-band 2 corresponding to the antenna 2, denoted as mixFreqSignal[m2][1] and mixFreqSignal[m2][2], m2 represents the antenna number, and the value is 2. Among them, the local carrier 2 is respectively: wherein n1=1, 2,..., N1, N1 is the baseband signal IQ data length, f s2 is the baseband digital sampling frequency, which has a value equal to N1 divided by the sampling period.
4. A spectrum sensing system for discrete shared bands as claimed in claim 3 wherein: The filtering and sampling module of each sensing terminal includes filtering and sampling module 1 and filtering and sampling module 2, which are respectively arranged at the output end of the IQ demodulation module and the secondary mixing module to filter out irrelevant frequency signals and reduce the IQ data rate by sampling. Among them, The filtering and sampling module 1 uses a Butterworth low-pass digital filter to filter the IQ data output by the IQ demodulation module, and then uses a sampling module to sample the filtered IQ data. The sampling multiple is equal to the ADC sampling frequency divided by the FFT point number, then divided by the subcarrier interval and finally divided by 2. The IQ data after filtering and sampling is the baseband signal IQ data baseBandSignal[m]; The filtering and sampling module 2 filters the IQ data outputted by the second mixing module using a Butterworth low-pass digital filter, and the IQ data outputted by the second mixing module is represented as mixFreqSignal[m][n f ], where m represents an antenna number, and has a value of 1 or 2; n f represents a sub-band number, and has a value of 1 or 2; the filtered IQ data is sampled using a sampling module, and the sampling multiple is 2; and the filtered and sampled IQ data is recorded as subBandSignal[m][n f ].
5. A spectrum sensing system for discrete shared bands as claimed in claim 4 wherein: The fast Fourier transform module of each sensing terminal performs FFT transform on the two-antenna IQ data in subBandSignal[m][n f ] in sub-band 1 and sub-band 2 respectively to obtain the spectrum data of antenna 1 and antenna 2, denoted as subCarrierData[m][n f ].
6. A spectrum sensing system for discrete shared bands as claimed in claim 5 wherein: The frequency selection and grouping module of each sensing terminal selects and groups the spectrum data corresponding to the two antennas in sub-frequency band 1 and sub-frequency band 2 in subCarrierData according to a single frequency point bandwidth B as the grouping reference. After grouping, the spectrum data in different groups carries the spectrum information of different frequency points, and the spectrum data corresponding to the two antennas in one or more sampling periods in the same group is stored as follows: 1) Calculate the start position of the spectrum data of the lth frequency point startpos l , where l represents the frequency point number; 2) In the Tth sampling period, select the spectrum data subCarrierData from the two antennas at the position startpos l , startpos l +1,..., startpos l ,..., x (l)1T (1, 2,..., B) and x (l)2T (1, 2,..., B) as a set of data into a unit of the spectrumDataSet data buffer; 3) Store in the vertical expansion direction according to the frequency point number l from small to large, and then store the frequency point spectrum data of other signal collection periods in the horizontal expansion direction according to the symbol sampling period T from small to large.
7. A spectrum sensing system for discrete shared bands as claimed in claim 6 wherein: The spectrum sensing module of each sensing terminal applies a spectrum sensing algorithm to calculate a detection statistic of the spectrum data of each frequency point, and then compares the detection statistic with a decision threshold to determine whether each frequency point is occupied, and the specific processing process is as follows: 1) In the spectrumDataSet data buffer horizontal direction, take out a group of data of one or T sampling periods of the lth frequency point to directly splice into a two-row N-column array, the first row of data is the spectrum data of antenna 1, the second row of data is the spectrum data of antenna 2, and calculate the correlation matrix R of the array x The calculation formula is as follows: where x1 and x2 are both 1 x N arrays corresponding to the spectral data of antenna 1 and antenna 2, respectively, and [·] H denotes the conjugate transpose of a matrix, R x is a 2 x 2 complex matrix; 2) according to R x The autocorrelation and cross-correlation values in the matrix are used to compute a detection statistic Det, as follows: where r 11 , r 22 are the main diagonal elements of the R x matrix, representing the autocorrelation values of the two-antenna spectral data, r 12 , r 21 are other elements in the R x matrix, representing the cross-correlation values of the two-antenna spectral data, and |·| represents the modulus of a complex number. 3) The proportion of the number of frequency points that are misjudged as "occupied" in all frequency points in the one-time spectrum sensing to the total number of actual idle frequency points is used to approximately estimate the false alarm probability, and then the decision threshold is obtained according to the target false alarm probability and the detection statistic calculation formula, and the process is as follows: a) The theoretical value of the decision threshold is set according to the detection statistic calculation formula, denoted as threshold_theory; b) The spectrum sensing is performed according to the known idle frequency point information to obtain the decision result, and the false alarm probability is calculated; c) The target false alarm probability and the current false alarm probability are compared to fine-tune the decision threshold value, and a temporary value of the decision threshold is recorded, denoted as threshold_tmp; d) After repeating steps b) and c) for a preset number of times, the average value of a part of the temporary values of the decision threshold threshold_tmp is calculated as the decision threshold used in subsequent spectrum sensing; 4) The detection statistic is compared with the current decision threshold, and if the detection statistic is greater than the decision threshold, it is determined that the frequency point is "occupied" by a user, otherwise, it is determined that the frequency point is "idle"; 5) Steps 1) to 4) are repeated until all frequency points in the frequency band are detected.
8. A spectrum sensing system for discrete shared bands as claimed in claim 7, wherein: In the spectrum sensing module can be according to the target false alarm probability and the current false alarm probability correction decision threshold, wherein, the detection statistics Det only with inter-antenna noise correlation coefficient p is related, with the noise power is irrelevant, will Det value as the theoretical decision threshold value, set a theoretical decision threshold approximation Th, Det > Th statistical probability is fixed, will be called false alarm probability P f , Th value and P f value is negative correlation, that is, the greater the value of Th P f value is smaller, the smaller the value of Th P f value is greater; set the initial value of decision threshold Th is 1, then according to the known idle frequency point information for spectrum sensing, calculate the false alarm probability, and according to the target false alarm probability and the current false alarm probability correction decision threshold, its process is: Step 1: The sensing terminal first acquires idle frequency point information, and then buffers the spectrum data of the current collected signals of the two receiving antennas; Step 2: The sensing terminal calculates the detection statistic Det according to the above steps, and compares Det with the new decision threshold newThreshod; Step 3: The idle frequency points are counted, and if Det is greater than the new decision threshold, the false alarm counter is incremented by 1. After scanning all idle frequency points in the spectrum, the current false alarm probability is equal to the value of the false alarm counter divided by the total number of scanned frequency points; Step 4: The correction factor is determined, wherein the current value of the correction factor is determined according to the value of the correction factor in the previous sensing and the size relationship between the current false alarm probability and the target false alarm probability; Step 5: The new decision threshold newThreshod is equal to the correction factor multiplied by Th.
9. The spectrum sensing system for discrete shared bands as claimed in claim 1 wherein: The base station performs system spectrum resource management and coordinates the communication services of the terminals, wherein In the spectrum sensing service, the base station receives the spectrum sensing results of multiple sensing times from each sensing terminal, and sends them to the edge computing device; In the data communication service, the base station obtains the idle frequency point prediction result from the edge computing device, and determines the frequency point for data communication with the terminal. In the case where the sensing terminal requests to obtain idle frequency point information, the base station sends the idle frequency point information to the corresponding sensing terminal; The edge computing device and the base station interact with each other, receive the spectrum sensing result and send the idle frequency point prediction result; The edge computing device groups the sensing results of each terminal according to their time intervals, and the fusion rule is as follows: for a certain frequency point, if the proportion of the number of terminals whose sensing result is "occupied" to the total number of all sensing terminals is greater than or equal to a set proportion V, the fusion result is "occupied", otherwise the fusion result is "idle". The edge computing device uses a long short-term memory neural network model as a basic model, trains a binary prediction model according to historical perception data and current spectrum perception data; The edge computing device further predicts the frequency point occupation in one or more subsequent time intervals according to the binary prediction model and the latest perception result; Finally, the idle frequency point prediction result in the demand time interval is sent to the base station.
10. A sensing method based on the spectrum sensing system of any of the preceding claims 1-9, characterized in that: The method comprises the following steps: Spectrum data is collected by a plurality of perception terminals and spectrum perception is performed, and the perception result is sent to the base station; The base station forwards the perception result to the edge computing device for fusion processing of a plurality of perception results; The edge computing device predicts the spectrum occupation in a plurality of subsequent time steps by using a pre-trained binary prediction model after fusing the plurality of perception results, and sends the spectrum prediction result to the base station; Finally, the base station screens the idle spectrum frequency points according to the spectrum prediction result and communicates with the perception terminal; Each perception terminal internally collects two-way radio frequency data, the radio frequency data is received from two antennas, is amplified and filtered by a double-channel amplification and filtering circuit, is sampled by a double-channel digital-to-analog converter to obtain time-domain radio frequency signals, is IQ demodulated by an in-phase quadrature signal demodulation module to obtain IQ data, is twice mixed by a twice mixing module to divide the signal spectrum into two sub-frequency bands, is subjected to fast Fourier transform by a fast Fourier transform module to obtain the spectrum data of the two antennas, is grouped according to frequency points by a spectrum perception module, is subjected to spectrum perception by the spectrum perception module, and is finally sent to the base station by a perception result sending module.
Citation Information
Patent Citations
Cooperative spectrum sensing method based on feature value consistent estimation
CN106656376A
System, method, and apparatus for providing dynamic, prioritized spectrum management and utilization
US20240430690A1