Satellite locator based on loRa frequency hopping technology
Patent Information
- Application Number
- CN202511763636.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-27
- Publication Date
- 2026-09-15
- Estimated Expiration
- 2045-11-27
AI Technical Summary
[0004]本发明的主要目的在于提供基于LoRa跳频技术的卫星定位器,以解决现有卫星定位器在定位精度、抗干扰能力、功耗控制及扩展能力方面的不足
1、抗干扰能力强:通过LoRa跳频抗干扰协同设计,动态规避窄带干扰、同频干扰,数据传输成功率高,较常规LoRa传输提升显著;
Smart Images

Figure CN121806067B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of satellite positioning equipment technology, specifically relating to a satellite locator based on LoRa frequency hopping technology. Background Technology
[0002] In IoT positioning applications, traditional satellite locators face the dual challenges of data transmission and interference resistance. On the one hand, most devices rely on cellular networks or short-range wireless communication, making data transmission impossible in remote areas without base station coverage. Furthermore, cellular network communication is costly and consumes a lot of power. On the other hand, in environments with complex electromagnetic interference, such as industrial plants and mining areas, conventional LoRa transmission is susceptible to narrowband interference and co-channel interference, leading to increased data packet loss rates and unstable transmission of positioning data.
[0003] In the existing technology, although some locators integrate LoRa transmission function, there are obvious defects: First, most GNSS modules only support a single frequency band, and the positioning accuracy is easily affected by multipath effect and ionospheric delay, making it difficult to meet the sub-meter positioning requirements. Secondly, LoRa modules lack frequency hopping anti-interference design, resulting in poor transmission stability in interference environments and an inability to guarantee continuous and reliable transmission of positioning data. Third, the hardware circuit has not been optimized for timing coordination for the frequency hopping function. The frequency hopping parameters of the main control chip and the LoRa module are poorly synchronized, which can easily lead to frequency hopping loss of synchronization and transmission interruption. Fourth, it is difficult to simultaneously achieve both external expandability and low power consumption, failing to meet the needs of multiple peripheral access and long-term outdoor operation in complex scenarios. Therefore, there is an urgent need for a satellite positioner that combines high-precision positioning, LoRa frequency hopping anti-interference transmission, strong expandability, and low power consumption to solve the aforementioned technical pain points. Summary of the Invention
[0004] The main objective of this invention is to provide a satellite locator based on LoRa frequency hopping technology to address the shortcomings of existing satellite locators in terms of positioning accuracy, anti-interference capability, power consumption control, and scalability.
[0005] To achieve the above objectives, the present invention provides a satellite locator based on LoRa frequency hopping technology, comprising a main control module, a LoRa transmission module, and a GNSS positioning module, wherein the main control module is connected to both the LoRa transmission module and the GNSS positioning module, and wherein: The main control module supports SPI, UART, I2C and GPIO communication interfaces, which are used to realize frequency hopping control, positioning data processing, power supply management and peripheral interaction; The LoRa transmission module includes a LoRa module and an adapter antenna. The LoRa module has a built-in frequency hopping control register and implements frequency hopping function based on pseudo-random sequences. The LoRa module receives frequency hopping parameters sent by the main control module through the SPI interface and receives frequency hopping synchronization signals from the main control chip through GPIO pins to ensure that the frequency hopping timing is consistent with the main control module and to ensure LoRa frequency hopping anti-interference transmission. The LoRa module has a built-in interference detection unit to detect the interference intensity of the current operating frequency in real time and feeds back the interference detection results to the main control module through the SPI interface. The GNSS positioning module has a built-in multi-constellation receiver chip, supports L1+L5 dual-band reception and superimposes additional frequency bands; the radio frequency link is equipped with a SAW filter circuit and a low-noise amplifier circuit, and is paired with a high-gain ceramic antenna; the dual-band GNSS data adopts a three-layer verification mechanism, including protocol verification, physical verification and consistency verification.
[0006] As a further preferred technical solution to the above technical solution, a low-power timing control function is provided, specifically: The main control module adopts a timed wake-up-positioning-interference detection-frequency hopping transmission-sleep cycle working mode; in sleep mode, only the main control module maintains the lowest power consumption mode, and the GNSS positioning module, LoRa module and external expansion peripherals are all powered off; after the wake-up time is reached, the main control module turns on the GNSS positioning module through the MOSFET and enters the positioning stage.
[0007] As a further preferred technical solution of the above technical solution, for the GNSS positioning module, the main control module establishes communication with the GNSS positioning module through the UART interface, and realizes parameter configuration, data acquisition and radio frequency link coordination of the GNSS positioning module by combining GPIO hardware control, and finally achieves high-precision positioning through pseudorange observation, dual-frequency ionosphere de-icing and Kalman filtering algorithm. After the GNSS positioning module is powered on, it receives L1+L5 multi-band satellite signals through the ceramic antenna. The module internally performs signal processing and outputs positioning data including latitude, longitude, altitude, and positioning accuracy. The main control module reads the positioning data through the UART interface and judges the validity of the data. If the data is invalid, the module is triggered to reposition until valid data is obtained. The valid positioning data is temporarily stored in the storage unit. At the same time, the main control module turns off the power supply of the module and turns on the power supply of the LoRa module, entering the interference detection and frequency hopping transmission stage.
[0008] As a further preferred technical solution to the above technical solution, the interference detection and frequency hopping parameter configuration of the LoRa module are specifically implemented as follows: After the LoRa module is powered on, it first enters the interference detection mode. The built-in interference detection unit sequentially performs interference detection on several preset operating frequency points within the preset frequency band, calculates the SNR value of each frequency point, and sends the detection results to the main control module through the SPI interface. The main control module filters out interference-free / low-interference frequency points according to the preset SNR threshold to form a frequency hopping set. At the same time, the main control module configures the frequency hopping interval and spreading factor according to the positioning data volume and transmission rate requirements, and writes the frequency hopping parameters into the LoRa module's frequency hopping control register through the SPI interface to complete the frequency hopping configuration.
[0009] As a further preferred technical solution to the above technical solution, the frequency hopping anti-interference transmission of the LoRa module is specifically implemented as follows: After the frequency hopping configuration is completed, the main control module sends a frequency hopping synchronization signal to the LoRa module through the GPIO pin to trigger frequency hopping transmission; the main control module uses the m-sequence algorithm to generate a pseudo-random frequency hopping sequence, and the m-sequence is generated by an n-stage linear feedback shift register (LFSR); The main control module packages the positioning data according to a custom protocol and sends it frame by frame to the LoRa module through the SPI interface. The LoRa module periodically switches between different frequency points according to the frequency hopping set and frequency hopping interval, modulates each frame of data into a wireless signal of the corresponding frequency, and sends it to the LoRa gateway through the adapter antenna. During the transmission, if the LoRa module detects that the SNR value of the current operating frequency is lower than the SNR threshold, it determines that there is strong interference and immediately sends an interference alarm signal to the main control module through the GPIO pin. After receiving the alarm signal, the main control module updates the frequency hopping frequency set in real time by filtering new interference-free frequency points and synchronizes it to the LoRa module. The main control module sends frequency hopping commands to the LoRa module through the SPI interface, switching to the next frequency point according to the m sequence. At the same time, the positioning data is transmitted in packets, with each data packet containing a frame header, data segment, and checksum to ensure that no data is lost during the frequency hopping process. After each round of frequency hopping sequence is completed, the main control module calculates the interference probability of each frequency point and dynamically and adaptively adjusts the frequency hopping frequency set. After the transmission is completed, the main control module reads the transmission status fed back by the LoRa module, stores the positioning data and frequency hopping transmission log to the flash memory chip, and then turns off the power supply to the LoRa module and enters sleep mode.
[0010] As a further preferred technical solution to the above technical solution, for external peripheral devices, if connected, the main control module reads the relevant peripheral data through the I2C / UART interface during the positioning phase, packages the peripheral data and positioning data together and transmits them together through LoRa frequency hopping; if the peripheral device triggers an interrupt, the interrupt pin wakes up the main control module, and the main control module immediately starts the positioning and frequency hopping transmission process to realize the real-time reporting of abnormal events.
[0011] The beneficial effects of this invention are as follows: 1. Strong anti-interference capability: Through the LoRa frequency hopping anti-interference collaborative design, it dynamically avoids narrowband interference and co-channel interference, resulting in a high data transmission success rate, which is significantly improved compared with conventional LoRa transmission. 2. High positioning accuracy: Supports L1+L5 dual-band and additional frequency band reception. With RF link optimization and algorithm processing, the positioning accuracy can reach sub-meter to centimeter level, meeting the high-precision requirements of different scenarios. 3. Low power consumption and long battery life: It adopts a "timed wake-up-work-sleep" cycle mode with a sleep current of ≤5μA. Combined with a multi-power input design, it greatly extends the outdoor operating time. 4. Strong scalability: Standardized external interfaces support the access of multiple types of peripherals, adapting to customized needs in different scenarios; 5. Data security and reliability: Dual encryption for storage and transmission, the randomness of frequency hopping transmission reduces the risk of data interception or tampering, and multi-layer verification mechanisms ensure data accuracy. Attached Figure Description
[0012] Figure 1 This is a schematic diagram of the present invention. Detailed Implementation
[0013] The following description is intended to disclose the present invention and enable those skilled in the art to implement it. The preferred embodiments described below are merely examples, and other obvious variations will occur to those skilled in the art. The basic principles of the invention defined in the following description can be applied to other embodiments, modifications, improvements, equivalents, and other technical solutions that do not depart from the spirit and scope of the invention.
[0014] In the preferred embodiments of the present invention, those skilled in the art should note that satellites and the like involved in the present invention can be considered as prior art.
[0015] Preferred embodiment.
[0016] This invention discloses a satellite locator based on LoRa frequency hopping technology, comprising a main control module, a LoRa transmission module, and a GNSS positioning module. The main control module is connected to both the LoRa transmission module and the GNSS positioning module, wherein: The main control module supports SPI, UART, I2C and GPIO communication interfaces, which are used to realize frequency hopping control, positioning data processing, power supply management and peripheral interaction; The LoRa transmission module includes a LoRa module and an adapter antenna. The LoRa module has a built-in frequency hopping control register and implements frequency hopping function based on pseudo-random sequences. The LoRa module receives frequency hopping parameters (frequency hopping frequency set, frequency hopping interval, and frequency hopping trigger condition) sent by the main control module through the SPI interface, and receives the frequency hopping synchronization signal from the main control chip through the GPIO pin to ensure that the frequency hopping timing is consistent with the main control module and to ensure LoRa frequency hopping anti-interference transmission. The LoRa module has a built-in interference detection unit to detect the interference intensity of the current operating frequency in real time (using the signal-to-noise ratio SNR as the judgment index), and feeds back the interference detection result to the main control module through the SPI interface. The GNSS positioning module has a built-in multi-constellation receiver chip, supporting L1+L5 dual-band reception and (can) superimpose additional frequency bands (E1, E5a, etc.); the RF link is equipped with a SAW filter circuit and a low-noise amplifier circuit, paired with a high-gain ceramic antenna (single-layer or dual-layer); the dual-band GNSS data adopts a three-layer verification mechanism, including protocol verification, physical verification, and consistency verification, wherein: Layer 1 (Protocol Verification): Not only does it verify the CRC of the NMEA frame, but it also designs a dedicated check bit for L1 / L5 dual-band extended frames (such as $PTAU,L1L5) to ensure the reliability of the dual-band data source; The second layer (physical verification): Filters out obviously erroneous data (such as latitude > 90°) by constraining latitude and longitude range, number of satellites, etc. The third layer (consistency check): calculate the deviation between the L1 and L5 positioning results (≤0.5 meters is the confidence threshold). If the deviation exceeds the limit, the L5 frequency band data is adopted first (taking advantage of the stronger anti-ionospheric interference capability of the L5 frequency band), and the "frequency band deviation" status is marked.
[0017] Specifically, it features low-power timing control functionality, specifically: The main control module adopts a timed wake-up-positioning-interference detection-frequency hopping transmission-sleep cycle working mode (the cycle period can be configured by the software (1 minute / time - 30 minutes / time)); in sleep mode, only the main control module maintains the lowest power consumption mode (current below 5μA), and the GNSS positioning module, LoRa module and external expansion peripherals are all powered off; after the wake-up time is reached, the main control module turns on the GNSS positioning module through the MOSFET and enters the positioning stage.
[0018] Unlike the conventional design of "fixed-period sleep", this invention constructs a dynamic feedback closed loop of "positioning result - transmission status - sleep period"; If GNSS positioning is successful and LoRa transmission is confirmed, the main controller extends the sleep cycle (up to 3600s) and shuts down the power to the GNSS, LoRa and RF modules; If positioning fails (three consecutive failures), the sleep cycle is automatically shortened to 30 seconds, while only the LoRa module is turned off (GNSS historical data is retained) to reduce the power consumption of repeated cold starts; In sleep mode, the main controller is woken up by both the RTC timer and external interrupt (extension interface), which balances low power consumption and emergency response.
[0019] The low-power management logic is as follows: The main control module controls the power enable of each module through GPIO ports to achieve a periodic working mode: Work cycle T=T 定位 +T 传输 +T 休眠 T 定位 =2s (GNSS module wake-up and positioning), T 传输 =0.5s (LoRa module data transmission), T 休眠 =30s-3600s (configurable).
[0020] In sleep mode, the main control module (STM32F030CCT6 chip) enters STOP2 mode (current ≤0.5μA), the RFM90C and GNSS modules are powered off, and only the power module maintains low power supply, which greatly reduces the overall power consumption.
[0021] More specifically, for the GNSS positioning module, the main control module establishes communication with the GNSS positioning module through the UART interface, and combines GPIO hardware control to realize parameter configuration, data acquisition and radio frequency link coordination of the GNSS positioning module. Finally, high-precision positioning is achieved through pseudorange observation, dual-frequency ionosphere de-icing, and Kalman filtering algorithms, wherein: Pseudorange observation equation: ρ i =r i +c·δt u -c·δt (s,i) +I i +T i +ε i ; Where, ρ i Let r be the pseudorange observation value of the i-th satellite. i Let c be the geometric distance between the receiver and the satellite, and c be the speed of light (3 × 10⁻⁶). 8 m / s), δt u For receiver clock bias, δt (s,i) Let I be the clock bias of the i-th satellite. i For ionospheric delay, T i For tropospheric delay, ε i For observation noise. c·δt u -c·δt (s,i), as a whole, represents the clock bias term representing the deviation of satellite reception.
[0022] Dual-frequency ionospheric error cancellation: Utilizing the characteristic that the ionospheric delay of L1 and L5 band signals is inversely proportional to the square of the frequency, a combined pseudorange ρ is constructed. LC =(f1 2 ·ρ1-f5²·ρ5)(f1²-f5²), eliminating the influence of ionospheric error, f1 is the frequency of L1 band, f5 is the frequency of L5 band) Kalman filter optimization: Establishing the state equation X k =Φ (k,k-1) X k-1 +W (k-1) and observation equation Z k =H k X k +V k , where X k The state vector (containing receiver position and clock bias), Φ (k,k-1) H is the state transition matrix. k For the observation matrix, W (k-1) V k These are process noise and observation noise, respectively, and the stability of the positioning data is improved through filtering iterations.
[0023] After the Kalman filter converges, the master controller calculates the final positioning coordinates (x, y, z), converts them into latitude and longitude (WGS84 coordinate system), and sends them to the LoRa module for transmission via UART; at the same time, it sends the command $PTAU,STATUS*XX to the GNSS module to obtain the current status of the module (such as the number of satellites and the carrier-to-noise ratio), which is used for result credibility marking.
[0024] After the GNSS positioning module is powered on, it receives L1+L5 multi-band satellite signals through the ceramic antenna. The module performs signal processing internally and outputs positioning data including latitude, longitude, altitude, and positioning accuracy (HDOP). The main control module reads the positioning data through the UART interface and judges the validity of the data (HDOP≤1.5 is considered valid). If the data is invalid, the module is triggered to reposition until valid data is obtained. The valid positioning data is temporarily stored in the storage unit. At the same time, the main control module turns off the power supply of the module and turns on the power supply of the LoRa module, entering the interference detection and frequency hopping transmission stage.
[0025] Furthermore, the specific implementation of interference detection and frequency hopping parameter configuration for the LoRa module is as follows: After the LoRa module is powered on, it first enters the interference detection mode. The built-in interference detection unit performs interference detection on several (16) preset operating frequency points (frequency interval 200kHz, covering the 868.0MHz-868.3MHz frequency band) within the preset frequency band (868MHz), calculates the SNR value of each frequency point, and sends the detection results (frequency point-SNR correspondence table) to the main control module through the SPI interface. The main control module filters out interference-free / low-interference frequency points according to the preset SNR threshold to form a frequency hopping set (containing at least 8 effective frequency points). At the same time, the main control module configures the frequency hopping interval (adjustable from 50ms to 200ms) and the spreading factor (default SF9) according to the positioning data volume and transmission rate requirements, and writes the frequency hopping parameters into the LoRa module's frequency hopping control register through the SPI interface to complete the frequency hopping configuration.
[0026] Furthermore, the frequency-hopping anti-interference transmission of the LoRa module is specifically implemented as follows: After the frequency hopping configuration is completed, the main control module sends a frequency hopping synchronization signal to the LoRa module through the GPIO pin to trigger frequency hopping transmission. The main control module uses the m-sequence algorithm to generate a pseudo-random frequency hopping sequence. The m-sequence is generated by an n-stage linear feedback shift register (LFSR) (the feedback polynomial is F(x) = x). 7 +x 3 +1 (Level 7 LFSR), sequence period is 2 7 -1=127, the frequency hopping frequency set is 16 frequency points (interval 200kHz) within the 868MHz band); The main control module packages the positioning data according to a custom protocol (frame structure: frame header [2 bytes] + device ID [4 bytes] + positioning data [16 bytes] + frequency hopping synchronization identifier [1 byte] + checksum [2 bytes]) and sends it frame by frame to the LoRa module through the SPI interface. The LoRa module periodically switches between different frequency points according to the frequency hopping frequency set and frequency hopping interval, modulates each frame of data into a wireless signal of the corresponding frequency, and sends it to the LoRa gateway through the adapter antenna. During the transmission, if the LoRa module detects that the SNR value of the current operating frequency is lower than the SNR threshold (-120dBm), it determines that there is strong interference and immediately sends an interference alarm signal to the main control module through the GPIO pin. After receiving the alarm signal, the main control module updates the frequency hopping frequency set in real time by filtering new interference-free frequency points and synchronizes it to the LoRa module. The main control module sends frequency hopping commands to the LoRa module through the SPI interface, switching to the next frequency point according to the m sequence (frequency hopping interval ≤ 10ms). At the same time, the positioning data is transmitted in packets, and each data packet contains a frame header, data segment, and checksum (CRC16) to ensure that no data is lost during the frequency hopping process. After each round of frequency hopping sequence (127 frequency points), the main control module calculates the interference probability of each frequency point and dynamically and adaptively adjusts the frequency hopping frequency set (prioritizing frequency points with an interference probability of less than 5%). After the transmission is completed, the main control module reads the transmission status (RSSI signal strength, data transmission success rate) fed back by the LoRa module, stores the positioning data and frequency hopping transmission log to the flash memory chip, and then turns off the power supply to the LoRa module and enters sleep mode.
[0027] It is worth mentioning that, in order to adapt to the low bandwidth characteristics of LoRa, a 32-byte fixed frame structure was designed to achieve "high-density information + strong verification": Embedded verification: The frame not only contains CRC16, but also embeds a "frequency hopping sequence number" field. The receiver can determine whether a frame has been lost by the continuity of the sequence number, which solves the problem of frame loss detection under the LoRa no-ACK mechanism. State fusion: Encode GNSS positioning status (L1 / L5 validity), device power consumption mode and other information into a 1-byte status code to achieve synchronous transmission of data and device status.
[0028] The interaction between the main control module and GNSS / LoRa not only relies on the hardware interface, but also incorporates a software-layer closed-loop verification mechanism. For GNSS positioning modules: After sending configuration commands (such as frequency band enable), you must receive a response frame returned by the module, and the response frame must contain the echo of the command parameters (such as L1=1, L5=1) to ensure that the configuration takes effect. For LoRa modules: After sending the frequency hopping command, read the module register via SPI to verify whether the frequency point is switched correctly, and avoid frequency hopping failure caused by command transmission errors.
[0029] Preferably, for external peripherals (such as vibration sensors), if connected, the main control module synchronously reads relevant peripheral data through the I2C / UART interface during the positioning phase, packages the peripheral data and positioning data together, and transmits them via LoRa frequency hopping. If an external device triggers an interrupt (such as an infrared alarm), the interrupt pin wakes up the main control module, which immediately starts the positioning and frequency hopping transmission process to achieve real-time reporting of abnormal events. The 9-pin external expansion interface supports multiple communication methods such as I2C, UART, and GPIO, and can be adapted to various types of peripherals such as sensors and alarms, flexibly expanding device functions and meeting customized needs in different scenarios.
[0030] Preferably, the detailed process of data parsing and verification for each module is as follows: 1. Data parsing and verification for the GNSS positioning module (TAU1113 / CMR260R): The GNSS positioning module, acting as the source of positioning data, receives L1+L5 dual-band satellite signals through the radio frequency processing module, and outputs NMEA0183 protocol frames (ASCII format) after processing, including: $GNGNS: Multi-system dual-frequency positioning frames (including L1 / L5 status, latitude and longitude, number of satellites, etc.); $GPGGA: Basic positioning information frame (including altitude, HDOP, etc.). $GPRMC: Recommended minimum data frame (including time, speed, etc.).
[0031] The main control module's GNSS data parsing process: The master controller receives data asynchronously via the UART interface. Frame synchronization and interception: The master controller initiates a UART receive interrupt, storing each received byte of data into a buffer (256 bytes in size), and continuously monitors the frame header ($) and frame trailer (\r\n). When a '$' is detected, mark the start position of the frame and clear the temporary buffer; Subsequent bytes are continuously stored in a temporary buffer until \r\n is detected, at which point it is determined to be a complete data frame (such as the $GNGNS frame mentioned above).
[0032] The main control module's verification mechanism for GNSS data: The NMEA protocol check performs a byte-by-byte XOR operation on all characters from $ to * in the frame (excluding $ and *), converts the result into a 2-digit hexadecimal number, and compares it with the checksum at the end of the frame.
[0033] Physical rationality verification: Latitude and longitude range: latitude ∈ [-90, 90]°, longitude ∈ [-180, 180]° (marking is invalid if outside the range); The number of satellites must be at least 4 (the minimum number of satellites required for three-dimensional positioning; otherwise, the positioning is unreliable). Location status: At least one of L1 and L5 in $GNGNS field 6 is A (valid), otherwise the location is considered to have failed; HDOP threshold ≤ 5 (when HDOP > 5, the positioning error > 10 meters, marked as "low precision").
[0034] Data parsing and verification of LoRa module (RFM90C): The RFM90C is responsible for the wireless transmission of positioning data. It interacts with the main controller via the SPI interface, involving the encapsulation and verification of transmitted data from the main controller to LoRa, as well as the parsing and verification of received data from LoRa to the main controller.
[0035] The main controller encapsulates the valid GNSS data into a 32-byte frame according to a custom format, including device ID (2 bytes), timestamp (4 bytes), latitude (4 bytes), longitude (4 bytes), and CRC16 checksum (2 bytes calculated from the first 30 bytes, polynomial 0x8005, initial value 0xFFFF).
[0036] Verification before sending: Frame structure verification: Check if the frame length is 32 bytes (including SOF and CRC) and if any fields are out of bounds (e.g., number of satellites ≤ 31). CRC16 pre-check: The main controller calculates the CRC value in advance and compares it with the encapsulated check code. If they do not match, the code is re-encapsulated (to avoid invalid transmission). Module status verification: Read the RegIrqFlags register (0x12) of RFM90C via SPI to confirm that the module is in "idle state" (0x00), otherwise wait 10ms and retry (to avoid transmission conflicts).
[0037] 2. Collaborative parsing and verification of the main control module (STM32F030CCT6): As the core, the main controller needs to coordinate the data flow between the GNSS and LoRa modules, and parse and verify the control commands and status data exchanged between the modules to ensure that the system works together.
[0038] Parsing and verifying module control instructions: When the master controller sends control commands to the GNSS / LoRa module, it needs to verify the validity of the commands and the module's response: If a response is received within 100ms, parse the status field (OK / ERRO) of the response frame; if ERRO, resend. If there is no response within the timeout period, force reset the GNSS module via the GPIO pin (pull the power enable pin low for 100ms).
[0039] Command verification for LoRa modules: After sending frequency hopping configuration commands (such as setting frequency point sets), read the RegFreqMs register of RFM90C to confirm that the frequency point parameters have been written correctly (such as the register value 0x6C0x800x00 corresponding to 868MHz). If they are inconsistent, reconfigure.
[0040] 3. Verification of low-power state data: The main controller verifies the low-power status data (such as sleep flag and current value) of itself and peripherals; Detect the sleep current of each module (through the current sampling pin of the power module): GNSS sleep current should be ≤50μA, LoRa sleep current should be ≤10μA, and if it exceeds the threshold, mark it as "abnormal power consumption". Verify the timer wake-up period (e.g., 30s): Confirm the period value by reading the RTC register to avoid wake-up anomalies caused by clock drift.
[0041] 4. Collaborative handling of anomalies: When any module fails verification, the main controller triggers cross-module collaborative processing: If GNSS positioning fails, the master controller instructs the LoRa module to prioritize sending a "positioning error" status frame (instead of positioning data) to reduce invalid data transmission. If LoRa transmission continues to fail, the main controller extends the GNSS sleep cycle (e.g., from 30s to 5min) to reduce overall power consumption until transmission is restored.
[0042] The data parsing and verification of each module are carried out through a three-layer mechanism of "format verification - logical verification - interactive confirmation" to ensure the accuracy and integrity of the positioning data from generation to transmission.
[0043] It is worth mentioning that this invention has three levels of precision, wherein: Example 1: Low-precision satellite positioning device: The core hardware modules are integrated on a 40mm×35mm×1mm double-layer PCB board. The main control module uses an STM32F030CCT6 chip, the GNSS positioning module uses a TAU1113 module, which supports GPS L1 / L5, Beidou B1 / B2, and GLONASS SG1 bands, and is equipped with a 15mm×15mm×4mm ceramic dielectric antenna (gain 28dB). The LoRa frequency hopping transmission module uses an RFM90C module and a patch antenna (10mm×4mm×1.6mm). The storage module uses a W25Q32JVSSIQ flash memory chip. The power supply module uses an HT7533-3.3V voltage regulator. The external expansion interface is a 9-pin horizontal socket.
[0044] Workflow: The main control module adopts a "timed wake-up - positioning - interference detection - frequency hopping transmission - sleep" cycle mode, with a cycle period adjustable from 1 minute to 30 minutes; after power-on, the GNSS positioning module receives multi-band satellite signals and outputs valid positioning data (HDOP≤1.5); the LoRa module performs interference detection on 16 preset frequency points within the 868MHz band, the main control selects interference-free frequency points to form a frequency hopping set, configures the frequency hopping interval and spreading factor, and triggers frequency hopping transmission through the GPIO synchronization signal; after transmission is completed, the power supply to each module is turned off and enters sleep mode, with a sleep current ≤5μA.
[0045] Example 2: Standard Precision Satellite Positioner The system uses a 60mm×60mm×1mm four-layer PCB board. The main control module is an STM32F030CCT6 chip, and the GNSS positioning module uses a CM260R module, equipped with a custom dual-layer ceramic dielectric antenna (35mm×35mm×8mm, L1 band gain 31dB, L5 band gain 29dB). The GNSS RF link has a dual-band SAW filter circuit and a two-stage low-noise amplifier circuit, with an overall gain of 32dB±2dB. The LoRa frequency hopping transmission module uses an RFM90C module and an onboard etched PIFA antenna (antenna radiator size 50mm×10mm, gain 1dBm). The storage module is a W25Q32JVSSIQ flash memory chip. The power supply module supports 5V-12V input and has overvoltage, overcurrent and ESD protection. The external expansion interface is a 9-pin horizontal socket (HX1.2mm-9PLT).
[0046] Workflow: The main controller wakes up periodically via the RTC timer, starts the GNSS positioning module for positioning, and reads and verifies the positioning data through the UART interface; the LoRa module detects the SNR values of 16 preset frequency points, and the main controller selects frequency points with SNR ≥ -12dB to form a frequency hopping set, configures the frequency hopping parameters, and triggers frequency hopping transmission; interference is detected in real time during transmission, and the frequency hopping set is dynamically updated; when peripherals are connected via the expansion interface, peripheral data and positioning data are collected synchronously and packaged for transmission; when the peripheral triggers an interrupt, the main controller is immediately woken up to start positioning transmission, with a response time ≤ 80ms.
[0047] Example 3: High-precision satellite positioning device: It adopts a four-layer PCB board of 80mm×70mm×1mm, the main control module is STM32F030CCT6 chip, the GNSS positioning module uses CM260R module (integrated RTK technology) and matched with 50mm×50mm×10mm single-layer ceramic dielectric antenna; the GNSS radio frequency link is equipped with SF9030 SAW filter and MAX2679BENS+T low noise amplifier (gain 20dB), and is covered with stainless steel shield; the LoRa frequency hopping transmission module uses RFM90C module and onboard PIFA antenna (radiator size 60mm×10mm, gain 1dBm, radiation efficiency 80%); the storage module is W25Q series flash memory chip; the power supply module inputs 5V DC power, which is converted by HT7533-3.3V regulator; the external expansion interface is a 9-pin straight plug socket.
[0048] Workflow: After the main control unit starts up, it configures the GNSS positioning module to L1+L5 dual-band + RTK mode, receives satellite signals, and calculates the data through pseudorange observation, dual-frequency ionosphere de-suppression, and Kalman filtering algorithms to output centimeter-level positioning data; the LoRa module monitors the RSSI value of the transmission link in real time, and when RSSI < threshold, the main control unit switches to backup channels (10 in total, spaced 200kHz apart); positioning data and frequency hopping logs are encrypted and stored in a flash memory chip, and transmission uses a 32-byte fixed frame structure to ensure data security and integrity; the sleep cycle is dynamically adjusted according to the positioning and transmission status.
[0049] It is worth mentioning that the satellite and other technical features involved in this patent application should be regarded as prior art. The specific structure, working principle, and possible control methods and spatial arrangement of these technical features can be adopted using conventional choices in the field, and should not be regarded as the inventive point of this patent. This patent will not be further elaborated in detail.
[0050] For those skilled in the art, modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this invention should be included within the protection scope of this invention.
Claims
1. A satellite locator based on LoRa frequency hopping technology, characterized in that, It includes a main control module, a LoRa transmission module, and a GNSS positioning module. The main control module is connected to both the LoRa transmission module and the GNSS positioning module. The main control module supports SPI, UART, I2C and GPIO communication interfaces, which are used to realize frequency hopping control, positioning data processing, power supply management and peripheral interaction; The LoRa transmission module includes a LoRa module and an adapter antenna. The LoRa module has a built-in frequency hopping control register and implements frequency hopping function based on pseudo-random sequences. The LoRa module receives frequency hopping parameters sent by the main control module through the SPI interface and receives frequency hopping synchronization signals from the main control chip through GPIO pins to ensure that the frequency hopping timing is consistent with the main control module and to ensure LoRa frequency hopping anti-interference transmission. The LoRa module has a built-in interference detection unit to detect the interference intensity of the current operating frequency in real time and feeds back the interference detection results to the main control module through the SPI interface. For frequency hopping anti-interference transmission of LoRa modules, the specific implementation is as follows: After the frequency hopping configuration is completed, the main control module sends a frequency hopping synchronization signal to the LoRa module through the GPIO pin to trigger frequency hopping transmission; the main control module uses the m-sequence algorithm to generate a pseudo-random frequency hopping sequence, and the m-sequence is generated by an n-stage linear feedback shift register (LFSR); The main control module packages the positioning data according to a custom protocol and sends it frame by frame to the LoRa module through the SPI interface. The LoRa module periodically switches between different frequency points according to the frequency hopping set and frequency hopping interval, modulates each frame of data into a wireless signal of the corresponding frequency, and sends it to the LoRa gateway through the adapter antenna. During the transmission, if the LoRa module detects that the SNR value of the current operating frequency is lower than the SNR threshold, it determines that there is strong interference and immediately sends an interference alarm signal to the main control module through the GPIO pin. After receiving the alarm signal, the main control module updates the frequency hopping frequency set in real time by filtering new interference-free frequency points and synchronizes it to the LoRa module. The main control module sends frequency hopping commands to the LoRa module through the SPI interface, switching to the next frequency point according to the m sequence. At the same time, the positioning data is transmitted in packets, with each data packet containing a frame header, data segment, and checksum to ensure that no data is lost during the frequency hopping process. After each round of frequency hopping sequence is completed, the main control module calculates the interference probability of each frequency point and dynamically and adaptively adjusts the frequency hopping frequency set. After the transmission is completed, the main control module reads the transmission status fed back by the LoRa module, stores the positioning data and frequency hopping transmission log to the flash memory chip, and then turns off the power supply to the LoRa module and enters sleep mode. The GNSS positioning module has a built-in multi-constellation receiver chip, supports L1+L5 dual-band reception and superimposes additional frequency bands; the radio frequency link is equipped with a SAW filter circuit and a low-noise amplifier circuit, and is paired with a high-gain ceramic antenna; the dual-band GNSS data adopts a three-layer verification mechanism, including protocol verification, physical verification and consistency verification.
2. A satellite locator based on LoRa frequency hopping technology according to claim 1, characterized in that, It has low-power timing control functions, specifically: The main control module adopts a timed wake-up-positioning-interference detection-frequency hopping transmission-sleep cycle working mode; in sleep mode, only the main control module maintains the lowest power consumption mode, and the GNSS positioning module, LoRa module and external expansion peripherals are all powered off; after the wake-up time is reached, the main control module turns on the GNSS positioning module through the MOSFET and enters the positioning stage.
3. A satellite locator based on LoRa frequency hopping technology according to claim 2, characterized in that, For the GNSS positioning module, the main control module establishes communication with the GNSS positioning module through the UART interface, and combines GPIO hardware control to realize parameter configuration, data acquisition and radio frequency link coordination of the GNSS positioning module. Finally, high-precision positioning is achieved through pseudorange observation, dual-frequency ionosphere de-icing and Kalman filtering algorithm. After the GNSS positioning module is powered on, it receives L1+L5 multi-band satellite signals through the ceramic antenna. The module internally performs signal processing and outputs positioning data including latitude, longitude, altitude, and positioning accuracy. The main control module reads the positioning data through the UART interface and judges the validity of the data. If the data is invalid, the module is triggered to reposition until valid data is obtained. The valid positioning data is temporarily stored in the storage unit. At the same time, the main control module turns off the power supply of the module and turns on the power supply of the LoRa module, entering the interference detection and frequency hopping transmission stage.
4. A satellite locator based on LoRa frequency hopping technology according to claim 3, characterized in that, The specific implementation for interference detection and frequency hopping parameter configuration of the LoRa module is as follows: After the LoRa module is powered on, it first enters the interference detection mode. The built-in interference detection unit performs interference detection on several preset operating frequency points within the preset frequency band in sequence, calculates the SNR value of each frequency point, and sends the detection results to the main control module through the SPI interface. The main control module selects interference-free / low-interference frequency points according to the preset SNR threshold to form a frequency hopping set; at the same time, the main control module configures the frequency hopping interval and spreading factor according to the positioning data volume and transmission rate requirements, and writes the frequency hopping parameters into the frequency hopping control register of the LoRa module through the SPI interface to complete the frequency hopping configuration.
5. A satellite locator based on LoRa frequency hopping technology according to claim 1, characterized in that, For external peripherals, if connected, the main control module reads the relevant peripheral data through the I2C / UART interface during the positioning phase, packages the peripheral data and positioning data together and transmits them through LoRa frequency hopping; if the peripheral triggers an interrupt, the interrupt pin wakes up the main control module, and the main control module immediately starts the positioning and frequency hopping transmission process to realize real-time reporting of abnormal events.
Citation Information
Patent Citations
Low-power spread-spectrum wireless communication module and method thereof
CN106411353A
Universal high-integration hybrid GNSS (Global Navigation Satellite System) global satellite positioning method and system
CN120352904A