A low earth orbit satellite based internet of things terminal random access method
By using Doppler pre-compensation parameters and hash functions to generate access time slot selection seeds in low-Earth orbit satellite IoT networks, the collision and Doppler frequency shift problems of massive terminal access in low-Earth orbit satellite IoT networks are solved, achieving efficient and reliable random access and reducing terminal energy consumption and transformation costs.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING GUODIAN GAOKE TECH CO LTD
- Filing Date
- 2026-05-06
- Publication Date
- 2026-07-07
AI Technical Summary
In low-Earth orbit satellite IoT networks, the massive number of terminals accessing the network results in an extremely high collision rate and dynamic Doppler frequency shift, leading to a low access success rate and insufficient terminal energy efficiency.
By obtaining the Doppler pre-compensation parameters broadcast by the satellite, the theoretical Doppler frequency offset between the terminal and the satellite is calculated. A predefined hash function is used to generate access time slot selection seeds, and non-uniform time slot selection and frequency pre-compensation are performed to achieve "pseudo-random but reproducible" dispersion during access, thereby reducing the probability of collisions and compensating for dynamic Doppler frequency shift.
It significantly reduces the probability of access collisions, improves the access success rate, enhances terminal energy efficiency, extends battery life, and does not require modification of the existing communication protocol stack, making it suitable for large-scale deployment.
Smart Images

Figure CN122348769A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of satellite communication technology, and in particular to a random access method for Internet of Things (IoT) terminals based on low-Earth orbit (LEO) satellites. Background Technology
[0002] With the rapid development of IoT technology, the demand for seamless global communication coverage is growing. Low-Earth orbit satellite IoT networks (such as the "Tianqi Constellation") have become a key technology for solving the IoT coverage problem in remote areas such as oceans, deserts, and aviation due to their wide coverage and low latency.
[0003] In low-Earth orbit (LEO) satellite IoT, a massive number of low-cost, low-power IoT terminals need to competitively access satellite channels to report data during the brief time window when the satellite passes overhead. This process is called random access. Traditional random access schemes (such as contention-based preamble transmission in terrestrial cellular networks) face the following significant challenges when applied to LEO satellite scenarios: Extremely high access collision rate: The satellite has a very wide coverage area (up to hundreds of kilometers in diameter), and the number of terminals within its coverage area is enormous. When the satellite passes overhead, a large number of terminals are simultaneously awakened and attempt to access the network, causing a sharp increase in the probability of preamble collision and a low access success rate.
[0004] Dynamic and drastic Doppler frequency shift: The high-speed movement of low-orbit satellites relative to ground terminals introduces huge and rapidly changing Doppler frequency shifts, causing the uplink signal frequency of the terminal to become inaccurate, resulting in satellite reception and demodulation failures, which seriously affect the reliability of the access process.
[0005] Terminal power is severely limited: IoT terminals are typically battery-powered, and a single failed access attempt means wasted energy. Frequent retransmission attempts can significantly shorten the terminal's lifespan.
[0006] Therefore, existing technologies lack a random access scheme that can effectively adapt to the dynamic characteristics of low-orbit satellites, significantly reduce collisions among massive terminal accesses, and improve terminal energy efficiency. Summary of the Invention
[0007] The present invention aims to overcome the shortcomings of the prior art and provide a random access method for Internet of Things terminals based on low-orbit satellites, so as to reduce the access collision probability of a large number of terminals when the satellite passes overhead, compensate for dynamic Doppler frequency shift, and improve the energy efficiency of terminal access.
[0008] To achieve the above objectives, the present invention provides the following solution: A method for random access of IoT terminals based on low-Earth orbit satellites, comprising: S1. Obtain the downlink synchronization signal and system information block periodically broadcast by the target low-orbit satellite; wherein, the system information block includes: satellite ephemeris information, current beam coverage area identifier, and Doppler pre-compensation parameter set configured for the random access procedure; S2. Calculate the theoretical Doppler frequency offset between the terminal and the satellite based on the satellite ephemeris information and the terminal's own position; S3. In the Doppler pre-compensation parameter group, select a target compensation value that is closest to the theoretical Doppler frequency offset value; S4. Based on the current beam coverage area identifier, an access slot selection seed is generated using a predefined hash function; S5. Based on the access time slot, select a seed and non-uniformly select a target access time slot within a random access time window; S6. In the target access time slot, the target compensation value is used to pre-compensate the uplink frequency of the preset random access preamble sequence, and the compensated preamble sequence is sent to the target low-Earth orbit satellite to initiate random access.
[0009] Optionally, the Doppler pre-compensation parameter set includes: Static Doppler frequency offset estimate, Doppler rate of change, reference time, radial velocity estimate of satellite and terminal, allowable frequency compensation adjustment range, unique identifier of target access satellite, and effective time window of parameters.
[0010] Optionally, the theoretical Doppler frequency offset between the calculation terminal and the satellite includes: Obtain the position vectors of the satellite and the terminal; Calculate the unit direction vector based on the position vector; Calculate the relative velocity vector; Calculate the radial velocity based on the unit direction vector and the relative velocity vector; Based on the radial velocity and the uplink carrier wavelength, the theoretical Doppler frequency offset value is obtained.
[0011] Optionally, obtaining the position vectors of the satellite and the terminal includes: The terminal parses satellite ephemeris information from the downlink signal; wherein, the satellite ephemeris information includes: position and velocity in the ECEF coordinate system; The terminal obtains its position vector through GNSS positioning; Based on the position in the ECEF coordinate system and the position vector of GNSS positioning, calculate the vector pointing from the terminal to the satellite.
[0012] Optionally, the unit direction vector is: in, Let be the unit direction vector, representing the unit vector (with a magnitude of 1) pointing from the terminal to the satellite at time t. This vector is used to determine the direction of the line connecting the satellite and the terminal. The position vectors of the satellite and the terminal represent the vector pointing from the terminal to the satellite, and its components are the position differences between the satellite and the terminal in the ECEF (Earth-centric Earth-fixed) coordinate system. This is the magnitude of the position vector, i.e., the straight-line distance (range) between the satellite and the terminal, used to normalize the position vector to obtain the unit direction vector.
[0013] The relative velocity vector is: in, It is a relative velocity vector. This is the satellite velocity vector. It represents the satellite's velocity vector in the ECEF coordinate system at time t (provided by the satellite's ephemeris). The Terminal Velocity Vector represents the velocity vector of the terminal in the ECEF coordinate system at time t (provided by the terminal's GNSS positioning information). The radial velocity is: in, Radial velocity; The theoretical Doppler frequency offset value is: in, This is the theoretical Doppler frequency offset value. For uplink carrier wavelength, Uplink Carrier Frequency. This represents the frequency of the uplink carrier signal transmitted by the terminal, measured in Hz. Speed of light in vacuum. A physical constant, typically taken as 299,792,458 m / s.
[0014] Optionally, generating an access slot selection seed includes: Obtain beam coverage area identifier; Obtain the terminal's unique identifier; The beam coverage area identifier and the terminal unique identifier are concatenated into a byte sequence and used as the input to the predefined hash function; Input the byte sequence into the predefined hash function; Take the first few bytes of the hash output and convert them into an unsigned integer. The unsigned integer is the access time slot selection seed.
[0015] Optionally, non-uniformly selecting a target access slot within a random access time window includes: Convert the access time slot selection seed into a probability value; The terminal is pre-set with a non-uniform distribution function, and the cumulative distribution function of the non-uniform distribution function is calculated; The terminal determines the interval in which the probability value is located by looking up the CDF table, thereby mapping the target time slot index SlotIndex within the random access window, which is the target access time slot.
[0016] Optionally, using the target compensation value to perform uplink frequency pre-compensation on the preset random access preamble sequence includes: The frequency compensation value for each symbol is calculated according to a preset formula; Based on the frequency compensation value, the sampling points of the preamble sequence are multiplied by a complex exponential rotation factor to complete the uplink frequency pre-compensation.
[0017] Optionally, the preset formula is: in, Let be the frequency compensation value for each symbol in the preamble sequence, representing the frequency offset adjustment required for frequency precompensation of the nth symbol in the preamble sequence. For the target compensation value, For Doppler rate of change, The transmission time of the nth symbol in the preamble sequence. This refers to the uplink carrier frequency. It represents the center frequency (in Hz) of the signal transmitted by the terminal. ReferenceTime. This represents the reference time point (usually the time when the parameters are issued or the start time of the leader sequence) to which the Doppler precompensation parameter set (Jd, target and Jd, rate) applies.
[0018] The beneficial effects of this invention are as follows: Significantly reduces access collisions: By using a seed generated by hashing the beam coverage area identifier and the terminal ID to determine the access time slot, the access requests are distributed in a "pseudo-random but reproducible" manner over time. This avoids a large number of terminals being concentrated in a few time slots due to completely independent random selection, thus fundamentally reducing the probability of collisions.
[0019] Effectively combating dynamic Doppler: The satellite broadcasts a set of discrete pre-compensation parameters, and the terminal selects the closest compensation value for uplink pre-compensation based on its own calculated precise theoretical values. This significantly offsets the main Doppler frequency shift caused by low-Earth orbit satellites, enabling the satellite receiver to operate within a smaller frequency acquisition range and improving the reliability and sensitivity of preamble detection.
[0020] Improved terminal energy efficiency: Due to the reduced collision probability and Doppler compensation, the success rate of first access is improved. The terminal does not need to retransmit frequently, which significantly reduces the energy consumed by repeated transmissions and extends battery life. This is particularly in line with the low power consumption design requirements of IoT terminals.
[0021] Low network-side overhead: The core "non-uniform time slot selection" logic is completed on the terminal side. The satellite side only needs to broadcast static or semi-static parameter sets (coverage area ID, Doppler parameter sets), without the need for complex real-time scheduling for each terminal. This results in low network signaling overhead and computational load, making it easy to deploy on a large scale. In addition, this mechanism is compatible with existing satellite communication protocol stacks, requiring no modification to the underlying physical layer or MAC layer standards. It can be implemented through lightweight software upgrades, reducing the deployment threshold for operators and the adaptation costs for terminal manufacturers. Attached Figure Description
[0022] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0023] Figure 1 This is a terminal-side flowchart of a random access method for an Internet of Things terminal based on a low-Earth orbit satellite according to an embodiment of the present invention; Figure 2 This is a schematic diagram illustrating the non-uniform time slot selection principle in an embodiment of the present invention; Figure 3 This is a module structure diagram of a random access device provided in an embodiment of the present invention. Detailed Implementation
[0024] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0025] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0026] like Figure 1 As shown, this embodiment proposes a random access method for IoT terminals based on low-Earth orbit satellites, including: S1. Obtain the downlink synchronization signal and system information block periodically broadcast by the target low-orbit satellite; wherein, the system information block includes: satellite ephemeris information, current beam coverage area identifier, and Doppler pre-compensation parameter set configured for the random access procedure; S2. Calculate the theoretical Doppler frequency offset between the terminal and the satellite based on the satellite ephemeris information and the terminal's own position; S3. In the Doppler pre-compensation parameter group, select a target compensation value that is closest to the theoretical Doppler frequency offset value; S4. Based on the current beam coverage area identifier, an access slot selection seed is generated using a predefined hash function; S5. Based on the access time slot, select a seed and non-uniformly select a target access time slot within a random access time window; S6. In the target access time slot, the target compensation value is used to pre-compensate the uplink frequency of the preset random access preamble sequence, and the compensated preamble sequence is sent to the target low-Earth orbit satellite to initiate random access.
[0027] Specifically, in this embodiment, S1: Listening to and receiving the downlink synchronization signal and system information block periodically broadcast by the target low-Earth orbit satellite. The system information block includes at least: satellite ephemeris information, current beam coverage area identifier, and a set of Doppler pre-compensation parameters configured for the random access procedure. The parameter set contains multiple different frequency compensation values.
[0028] In low-Earth orbit satellite Internet of Things (LEO) systems, the high-speed motion of satellites relative to ground terminals results in significant Doppler shift and Doppler rate of change.
[0029] If the terminal does not compensate for these effects during the random access phase, it will cause the uplink signal frequency to deviate too much, making it difficult for the satellite receiver to correctly demodulate the preamble or synchronization sequence, thereby reducing the access success rate.
[0030] Therefore, in this embodiment, before initiating random access, the terminal will pre-acquire a set of "Doppler pre-compensation parameters" and complete frequency pre-correction before transmitting the access signal. This set of parameters is not a single value, but a multi-dimensional parameter set (parameter group) to dynamically adapt to the high-speed motion characteristics of the satellite at different access times.
[0031] 1. Composition of the Doppler pre-compensation parameter set: As shown in Table 1 below, the Doppler pre-compensation parameter set typically includes the following core parameters (which may be slightly increased or decreased depending on the implementation). Table 1 Doppler pre-compensation parameter set These parameters are encapsulated as a structure or message field and sent to the terminal via downlink broadcast or dedicated signaling.
[0032] 2. Parameter group setting method (generation and configuration process): How does the ground control center / satellite payload set this parameter group for the terminal, and how does the terminal use it?
[0033] 1. Parameter generation terminal (ground control center + satellite): I. Estimated radial velocities of satellite and terminal ( How to obtain: In the parameter generation process of the patent (ground control center + satellite), the acquisition of the radial velocity estimate is divided into the following steps: 1. Obtaining ephemeris and clock information: The ground control center (GCC) obtains high-precision ephemeris (containing the satellite's position, velocity vector, and timestamp in the ECEF coordinate system) and clock information (for time synchronization) of the target low-Earth orbit satellite through satellite telemetry and control systems (such as TT&C, telemetry, tracking, and command systems).
[0034] 2. Terminal location prediction: The terminal obtains its real-time position vector in the ECEF coordinate system through its built-in GNSS (Global Navigation Satellite System, such as GPS and BeiDou) module. The location information (or the predicted terminal location) is reported to the ground control center via uplink signaling (such as registration, heartbeat packets); or the average location of the terminal in the target area coverage prediction model of the ground control center is predicted based on the satellite orbit and coverage area (applicable to batch terminal scenarios).
[0035] 3. Calculation of relative position and relative velocity: The ground control center calculates the satellite's position vector in the ECEF coordinate system based on the satellite's ephemeris. and velocity vector Combined with terminal location Calculate the satellite-terminal relative position vector: The relative velocity vector is: The terminal speed can be obtained from GNSS positioning or from the speed information reported by the terminal.
[0036] 4. Derivation of radial velocity: Radial velocity is the projection of relative velocity onto the "satellite-terminal line direction". First, calculate the unit direction vector \hat{r}(t) (from the terminal to the satellite): Then, the radial velocity v_{\text{radial}}(t) is the dot product of the relative velocity and the unit direction vector: (Positive values indicate the satellite is moving away from the terminal, while negative values indicate the satellite is moving closer to the terminal.)
[0037] 5. Smoothing and Estimation: Due to the high-speed motion of low-Earth orbit satellites, their radial velocity changes rapidly over time. Ground control centers will perform a sliding window averaging (or Kalman filtering) on the radial velocity over a period of time to obtain a stable estimate. This is used for subsequent Doppler frequency offset calculations.
[0038] II. Permissible Frequency Compensation Adjustment Range ( How to obtain: The permissible frequency compensation adjustment range is designed to prevent over- or under-tuning of the terminal's local voltage-controlled oscillator (VCO) and must be determined in conjunction with the terminal's hardware capabilities and satellite access requirements. 1. Terminal hardware survey: The ground control center, in conjunction with the satellite payload design team, obtained the VCO tuning range of the terminal (such as ±50kHz, ±100kHz, which is determined by the terminal's RF chip specifications).
[0039] 2. Doppler frequency shift analysis: Based on the satellite orbit (e.g., a low Earth orbit constellation with an altitude of 500 km and an inclination of 97°) and carrier frequency (e.g., L-band 1.6 GHz), calculate the maximum Doppler frequency offset rate (e.g., ±10 kHz / s). Combined with the duration of the random access preamble sequence (e.g., 10 ms), obtain the maximum Doppler frequency offset change during the preamble period (e.g., ±0.1 kHz).
[0040] 3. Safety margin design: To avoid compensation errors, the ground control center will reserve a safety margin (such as 20%) based on the terminal VCO tuning range, and finally determine the allowable frequency compensation adjustment range. For example, if the adjustable range of the terminal VCO is ±60kHz, with a safety margin of 20%, then... =±40kHz.
[0041] 4. Parameter encapsulation: This range, along with parameters such as ephemeris calculations and satellite coverage from the ground control center, is encapsulated as a parameter field and sent to the terminal via downlink broadcast or dedicated signaling.
[0042] III. Unique identifier of the target access satellite ( How to obtain: The unique identifier of the target access satellite is used by the terminal to match the currently serving satellite, ensuring that the parameters correspond one-to-one with the satellite: 1. Satellite ephemeris linked to identity: Each low-Earth orbit satellite is assigned a unique satellite identifier before launch. (For example, based on a combination of satellite number, orbital plane number, and slot number, e.g., SAT_001_02_03, which represents the first orbital plane, the second satellite, and the third slot).
[0043] 2. Ground control center ephemeris management: The ground control center's ephemeris database associates each sat_id with corresponding ephemeris parameters (position, velocity, orbital elements, etc.) and clock information.
[0044] 3. Identifier carried during parameter distribution: When calculating the Doppler parameters of a satellite, the ground control center binds and encapsulates the satellite's sat_id with parameters (radial velocity, compensation range, time window, etc.) and sends them to the terminal via downlink broadcast (such as Beacon signals, system message blocks) or dedicated signaling (such as RRC connection reconfiguration).
[0045] 4. Terminal-side matching: After receiving the parameters, the terminal extracts the sat_id and compares it with the satellite it is currently locked to (by matching the beam ID of the downlink signal and the satellite ephemeris) to ensure that the parameters are consistent with the currently serving satellite.
[0046] IV. Parameter Effective Time Window ( How to obtain: The parameter validity window is used to ensure that the parameters are valid during the satellite's overhead transit; after the window expires, the terminal needs to reacquire them. 1. Satellite overpass time prediction: The ground control center calculates the overpass time window (i.e. the time period from when the satellite enters the visible area of the terminal to when it leaves) of the target satellite relative to the area where the terminal is located (or a single terminal position) based on the satellite ephemeris (such as the SGP4 / SDP4 orbit model).
[0047] 2. Time window length design: The time window length must cover the duration of the random access process (such as the total time from terminal power-on to completion of random access, including parameter acquisition, time slot selection, preamble transmission, etc., which is usually a few seconds to tens of seconds), and reserve a safety margin (such as 5%). For example, if random access takes 10 seconds and the safety margin is 5%, then the time window length is 10.5 seconds.
[0048] 3. Timestamp annotation for time windows: The ground control center will set the start time of the parameter validity window ( ) and end time ( Convert to UTC time, along with the parameters. ,in It is the time when the satellite enters the terminal's visible area. = + Valid duration.
[0049] 4. Terminal-side verification: After receiving the parameters, the terminal will record the current UTC time and compare it with the time displayed on the terminal. Compare the parameters. If the current time is within the window, use the parameters; if it has expired, trigger the parameter re-acquisition process (such as re-receiving downlink broadcasts or requesting an update from the ground control center).
[0050] (1) Acquire satellite orbit and velocity data: The ground control center possesses high-precision satellite ephemeris and clock information; The radial velocity and acceleration of a satellite relative to a target area (or a single terminal location) are calculated using ephemeris calculations over a future period.
[0051] (2) Calculate the static Doppler frequency offset f_d_offset: formula: ; in: λ is the radial velocity from the satellite to the terminal (positive values indicate distance away, negative values indicate proximity), and λ is the uplink carrier wavelength (e.g., L-band 1.6 GHz → λ ≈ 0.1875 m). (3) Calculate the Doppler rate of change f_d_rate: Because low-Earth orbit satellites change velocity rapidly, the frequency offset will change approximately linearly during the access process (a few seconds to tens of seconds): , The radial acceleration is obtained from the ephemeris derivative.
[0052] (4) Determine the reference time t_ref: Typically, the parameter is taken at the time of parameter distribution or at the time when the predicted satellite is closest to the terminal (Time of Closest Approach, TCA). Ensure that the time difference between the terminal's access time and t_ref is within the validity_window range.
[0053] (5) Set validty_window: The setting is based on the duration of satellite overhead and the severity of Doppler changes, for example, ±60 seconds.
[0054] Once the window expires, the terminal must request or receive a new set of parameters.
[0055] (6) Package and distribute: The satellite transmits this parameter group in a downlink service channel or a dedicated broadcast channel (such as a system information block broadcast by the satellite).
[0056] Alternatively, the ground gateway may carry parameter groups via RRC signaling or MAC CE messages during terminal network access authentication / resource allocation.
[0057] 2. Parameter user terminal (IoT terminal): (1) Receive and parse the parameter group: The terminal extracts f_d_offset, f_d_rate, t_ref, validity_window, etc. from the downlink signal.
[0058] Check if the current UTC time is within the validity_window; otherwise, discard the value and wait for new parameters.
[0059] (2) Dynamic frequency pre-compensation: When the terminal constructs the random access preamble: At the start of launch , calculation and The difference ; Real-time compensation frequency: ; in This refers to the nominal uplink carrier frequency.
[0060] (3) Hardware implementation: The terminal local oscillator (VCO / PLL) is tuned according to the compensated frequency word.
[0061] If the hardware supports real-time dynamic adjustment, the frequency can be updated in each symbol period of the preamble sequence (for long preambles).
[0062] 3. The setting of the Doppler pre-compensation parameter group has the following optimization characteristics: Time-division multiplexing of multiple sets of parameters: Different t_ref and validity_window may be assigned to different terminals in the same area to achieve staggered access and avoid collisions caused by a large number of terminals performing frequency compensation adjustments at the same time.
[0063] Refined computation based on terminal location: The ground center can calculate a more accurate v_radial based on the rough position (or GNSS information) reported by the terminal, thereby improving the accuracy of f_d_offset.
[0064] Dynamic update mechanism: If the satellite orbital maneuver or the prediction error is large, the ground center can insert a new parameter group in the validity_window, and the terminal will take priority in using the latest received valid parameters.
[0065] Fault tolerance range Δf_compensation_range: To prevent insufficient local VCO tuning capability of the terminal, the parameter group explicitly gives the allowable compensation range. If the terminal is outside the range, it will abandon the access and wait for the next window to avoid invalid transmission.
[0066] 4. Examples: Assumption: Uplink frequency ; Satellite radial velocity =−3500m / s (close to the middle); radial acceleration =200m / s²; calculate: ; Parameter group settings: f_d_offset = -18670 Hz f_d_rate = 1067 Hz / s t_ref = 2026-03-26T10:00:00Z validity_window = [09:59:30Z ~ 10:00:30Z] Δf_compensation_range = ±25 kHz sat_id = LEO-023; The terminal transmitted at 10:00:10: ; The terminal sets the transmission frequency to 8 kHz lower than the nominal frequency to cancel out most of the Doppler effect.
[0067] In this embodiment, the Doppler pre-compensation parameter set is a multi-dimensional, spatiotemporally correlated compensation configuration set, which is dynamically generated by the ground control center based on high-precision ephemeris and terminal location, and distributed through satellite or ground gateway.
[0068] Before random access, the terminal uses this parameter set to perform fine frequency pre-calibration to ensure reliable access to the satellite even under high-speed relative motion conditions.
[0069] This setup significantly improves the success rate and system capacity of random access to low-Earth orbit satellite IoT, and is one of the core innovations of the technical solution in this embodiment.
[0070] Furthermore, the theoretical Doppler frequency offset between the calculation terminal and the satellite includes: Obtain the position vectors of the satellite and the terminal; Calculate the unit direction vector based on the position vector; Calculate the relative velocity vector; Calculate the radial velocity based on the unit direction vector and the relative velocity vector; Based on the radial velocity and the uplink carrier wavelength, the theoretical Doppler frequency offset value is obtained.
[0071] Specifically, in this embodiment, S2: Calculate the theoretical Doppler frequency offset between the terminal and the satellite based on the satellite ephemeris information and the terminal's own position.
[0072] In this embodiment, before initiating random access, the terminal needs to calculate a theoretical Doppler frequency offset based on the satellite ephemeris and its own position, which is used to select the closest target compensation value from the Doppler pre-compensation parameter set sent by the satellite.
[0073] Theoretical Doppler frequency offset refers to the carrier frequency offset caused directly by the relative radial motion between the satellite and the terminal under ideal conditions (ignoring minor effects such as atmospheric refraction and clock error).
[0074] Its physical origin is the Doppler effect—when the wave source and the observer move relative to each other along the line connecting them, the observed wave frequency will change.
[0075] For low-Earth orbit satellite IoT, this frequency shift value is typically in the range of ± tens of kHz and changes rapidly over time, so accurate estimation and pre-compensation must be performed before access.
[0076] 1. Calculation principle: According to the classical Doppler formula, in the non-relativistic case (where the satellite's velocity is much less than the speed of light), the frequency shift is: ; in: Theoretical Doppler frequency deviation (unit: Hz, positive value indicates far away, negative value indicates close). Radial velocity between the satellite and the terminal (unit: m / s, velocity component along the line connecting the two). Uplink carrier wavelength (unit: m). The velocity vector of the satellite relative to the terminal. : The unit direction vector pointing from the terminal to the satellite; In this embodiment, the value is calculated locally by the terminal, and the input is: Satellite ephemeris (position + velocity vector); terminal's own position (obtainable via built-in GNSS); uplink carrier frequency (a known constant).
[0077] 2. Calculation steps: Step 1: Obtain the position vectors of the satellite and the terminal: The terminal extracts satellite ephemeris information (position in ECEF coordinate system) from the downlink signal. With speed .
[0078] The terminal obtains its own position in the ECEF coordinate system via GNSS. .
[0079] Calculate the vector pointing from the terminal to the satellite: .
[0080] Step 2: Calculate the unit direction vector: .
[0081] Step 3: Calculate the relative velocity vector: ; Typical terminal speed It is much smaller than the satellite speed and can be approximated as 0, but is retained for precise calculations.
[0082] Step 4: Calculate the radial velocity: ; When the value is positive, the satellite is far from the terminal, resulting in a positive Doppler frequency shift; when it is negative, the satellite is close to the terminal, resulting in a negative Doppler frequency shift.
[0083] Step 5: Calculate the theoretical Doppler frequency offset: ; Where c is the speed of light (≈ 3 × 10⁻⁶) 8 m / s), This is the uplink carrier frequency.
[0084] Step 6: Time Synchronization: Ephemeris time, terminal local time, and GNSS time must be unified to UTC or GPS time to ensure that position / velocity data correspond to the same time.
[0085] In this embodiment, the current time or the expected access time is usually taken as the calculation time point.
[0086] 3. Specific application of the method in this embodiment: In step S2, the terminal performs the above calculations to obtain... ,in This is the moment when a random access is planned to be initiated.
[0087] Subsequently, in step S3, the terminal selects from the Doppler pre-compensation parameter set sent by the satellite... The closest value is used as the target compensation value. It is used for frequency pre-correction during preamble transmission.
[0088] The benefits of doing this: The theoretical values calculated locally on the terminal are highly accurate and can reflect the true relative motion state.
[0089] The parameter set for satellite broadcasting is discrete (e.g., {-12kHz, -6kHz, 0kHz, +6kHz, +12kHz}). The terminal matches the nearest term with the theoretical value, which reduces the terminal hardware complexity and ensures the effectiveness of the compensation.
[0090] 4. Example Calculation (Numerical Demonstration): Assumption: Uplink frequency =1.6GHz→ λ=0.1875m; Satellite position =(7000km, 0, 0)ECEF; Satellite speed =(0, −7.5km / s, 0); Terminal location =(7000km, 100km, 0); Terminal speed ≈0.
[0091] 1. Calculation =(0, −100km, 0); 2. =(0, −1, 0); 3. =(0, −7500, 0); 4. =(0, −7500, 0)⋅(0, −1, 0)=7500m / s (The satellite is approaching the terminal, so it should be negative? Note the direction: pointing from the terminal to the satellite, if the satellite is "south" of the terminal, the y-direction is negative, then...) It is (0, -1, 0). Also (0, -7500, 0), the dot product is positive, indicating that the satellite is moving in the negative y direction, and the distance to the terminal is decreasing, so In reality, it's close, so the negative should be taken. Note the sign definition here; follow the physical definition. Let be the radial velocity of the satellite relative to the terminal. If the distance decreases, then... <0, therefore =−7500); 5. Calculation : The theoretical Doppler frequency offset is -40 kHz, which means that the terminal needs to increase the transmission frequency by 40 kHz to compensate for the frequency drop caused by the satellite approaching. 5. Detailed Implementation: In step S2, the terminal uses the ephemeris information broadcast by the satellite (including the satellite's position vector in the ECEF coordinate system) to... With velocity vector ) and the position vector obtained by its own GNSS positioning Calculate the vector pointing from the terminal to the satellite. And normalize to obtain the unit direction vector The terminal further calculates the relative velocity vector. And calculate the radial velocity. Finally, based on the uplink carrier wavelength... Calculate the theoretical Doppler frequency offset. This value can be negative (satellite is approaching) or positive (satellite is moving away), and the terminal selects the target compensation value from the closest Doppler pre-compensation parameter group in step S3 accordingly.
[0093] In this embodiment, the theoretical Doppler frequency offset value serves as a bridge connecting the satellite ephemeris / terminal location with the selection of pre-compensation parameters. Its calculation process is based on the classical Doppler formula and combined with ECEF coordinate vector operations, with sufficient accuracy to support the high dynamic random access scenario of low-Earth orbit satellite IoT.
[0094] Specifically, in this embodiment, S3: Select a target compensation value from the Doppler pre-compensation parameter set that is closest to the theoretical Doppler frequency offset value.
[0095] Furthermore, generating an access slot selection seed includes: Obtain beam coverage area identifier; Obtain the terminal's unique identifier; The beam coverage area identifier and the terminal unique identifier are concatenated into a byte sequence and used as the input to the predefined hash function; Input the byte sequence into the predefined hash function; Take the first few bytes of the hash output and convert them into an unsigned integer. The unsigned integer is the access time slot selection seed.
[0096] Specifically, in this embodiment, S4: Based on the current beam coverage area identifier, an access time slot selection seed is generated using a predefined hash function. The input to the hash function includes at least: the coverage area identifier and the terminal's unique identifier.
[0097] In this embodiment, the number of IoT terminals within the satellite coverage area is enormous. If all terminals randomly select access time slots, "collision hotspots" (multiple terminals concentrated in a few time slots) are very likely to occur, causing a sharp drop in access success rate.
[0098] To address this issue, this embodiment introduces a mechanism for "selecting access slot seeds based on predefined hash functions": The core idea is to make the time slot selection results of the terminal "pseudo-random but reproducible" in space, so as to avoid the clustering caused by completely independent random selection.
[0099] Implementation method: Use a predefined hash function to bind the terminal's unique identifier with the satellite beam coverage area identifier to generate a seed value, and then map the seed to the access time slot index.
[0100] Advantages: Geographical dispersion: Within the same beam coverage area, terminals in different locations (even if the ID is random) will be mapped to different time slots due to different hash inputs, reducing collisions.
[0101] Determinism: For the same terminal under the same beam and the same time slot window, the seed calculated each time is consistent, which facilitates debugging and reproduction.
[0102] Low complexity: Hash functions require little computation, making them suitable for low-power IoT terminals.
[0103] 1. Seed definition: The Access Slot Selection Seed is an integer or byte sequence that serves as the input source for subsequent slot mapping algorithms.
[0104] Its definition must satisfy: Uniqueness source: It is jointly determined by the terminal's unique identifier (such as IMEI, DevEUI) and the beam coverage area identifier (Cell ID), ensuring that different terminals or terminals with different beams generate different seeds.
[0105] Unpredictability: The mapping relationship between the seed and the final time slot cannot be easily predicted by external observers, preventing malicious terminals from launching collision attacks.
[0106] Stability: Once the seed is generated in a single random access process, it will not be changed, ensuring the stability of the time slot selection result.
[0107] 2. Selection of predefined hash functions: The emphasis on "predefined" in this embodiment is to ensure that the terminal and the satellite have a consistent understanding of the algorithm, and that the algorithm itself is public (and can be standardized).
[0108] Common choices: SHA-256 / SHA-1 / MD5 (truncated output); It has high safety and good collision resistance, making it suitable for scenarios with high safety requirements.
[0109] The output is quite long; the first 4-8 bytes can be truncated as the seed integer.
[0110] CRC32 / CRC16; It has extremely fast computation speed, making it suitable for ultra-low power terminals, but it has weak collision resistance and is suitable for closed networks.
[0111] MurmurHash / xxHash; Unencrypted high-performance hashing, suitable for rapid computation on a large scale of terminals.
[0112] In this embodiment, SHA-256 truncation or MurmurHash3 is preferred, balancing security and efficiency.
[0113] 3. Seed generation steps (in conjunction with method S4 of this embodiment): In step S4 of this embodiment, the terminal performs the following procedure: S4-1: Prepare hash input: Obtain beam coverage area identifier (Provided by system information blocks broadcast by satellite, such as 16-bit integers).
[0114] Obtain the unique identifier of the terminal (e.g., 64-bit IMEI or DevEUI).
[0115] Concatenate the two into a byte sequence according to a fixed format, for example: "||" indicates byte-level concatenation.
[0116] A fixed protocol version number or a random number can be attached (optional, for preventing replay).
[0117] S4-2: Applying a predefined hash function: Input is fed into a predefined hash function H(⋅), for example: Take the first k bytes of the hash output (e.g., k=4) and convert them to an unsigned integer: .
[0118] This integer is the seed for selecting the access time slot.
[0119] S4-3: Time slot mapping (S5 step): Suppose that the random access window contains N time slots (e.g., N=64).
[0120] Will Time slot index mapped to the interval [0, N−1] : Simple modulus extraction method (basic version): ; Non-uniform mapping method (optimized version in this embodiment): Treat Seed as a floating-point number in the interval (0, 1) (by dividing by...) Then input a non-uniform distribution function. (e.g., Beta distribution or empirically optimized distribution), obtain the probability value p, and finally linearly map p to the time slot index: ; This approach allows terminals in geographically close locations (with the same $CellID but different $UID) to be more dispersed in time slot selection, avoiding "local collision clusters".
[0121] 4. Example calculation: Assumption: ; (64-bit) → Bytes [0x86, 0x95, 0x06, 0x03, 0x00, 0x00, 0x00, 0x01]; After splicing ; The hash function H is SHA-256, and the first 4 bytes of the output are 0x3F A1 7C 2B; Convert to integer: ; If N=64: Simple modulus extraction: ; Non-uniform mapping: Convert Seed to floating-point number Substituting into the Beta(2,5) distribution, we get ,but ; The access time slot selection seed is a key intermediate variable in this embodiment for achieving "controllable randomized time slot allocation." Its generation process consists of a predefined hash function and beam / terminal identifier binding, ensuring that: The time slot selection results are naturally dispersed for different terminals and different beams.
[0122] It is simple to calculate and suitable for low-power IoT terminals.
[0123] It can be combined with non-uniform distribution to further improve collision resistance.
[0124] Non-uniform selection of a target access slot within a random access time window includes: Convert the access time slot selection seed into a probability value; The terminal is pre-set with a non-uniform distribution function, and the cumulative distribution function of the non-uniform distribution function is calculated; The terminal determines the interval in which the probability value is located by looking up the CDF table, thereby mapping the target time slot index SlotIndex within the random access window, which is the target access time slot.
[0125] Specifically, in this embodiment, S5: Based on the access slot selection seed, a target access slot is selected non-uniformly within a random access time window. The non-uniform selection makes the probability of different terminals selecting the same slot dispersed according to their geographical location (implied in the hash seed), thereby dispersing access conflicts in the time dimension.
[0126] In the method of this embodiment, the number of IoT terminals within the satellite coverage area is huge. If all terminals randomly select time slots completely uniformly within the random access window (e.g., simply taking the modulo of the total number of time slots), it is very easy to form collision hotspots in a few time slots, resulting in a decrease in the access success rate.
[0127] To address this issue, this embodiment introduces a "non-uniform time slot selection" mechanism: The core idea is to distribute the time slot selection results of the terminal across the time axis to avoid clustering.
[0128] Implementation method: Select a seed based on the access time slot (generated by a hash function) and map it to the time slot index through a non-uniform distribution function (such as Beta distribution or empirically optimized distribution).
[0129] Target: Reduce collision probability: Terminals access the network at different times to reduce the number of competing terminals in the same time slot.
[0130] Geographical correlation is dispersed: terminals with similar geographical locations (whose hash seeds may have some correlation) are mapped to different time slots.
[0131] Fairness: Each terminal still has an equal opportunity to access the network, but the opportunities are staggered in time.
[0132] 1. Criteria for determining non-uniform selection: The key to non-uniform selection lies in the decision-making criteria, namely, the rules for mapping seeds to time slot indices. These criteria stem from the following three aspects: 1. Control of the correlation between seed source and origin: The seed is generated by hashing the beam coverage area identifier (Cell ID) and the terminal unique identifier (UID).
[0133] Terminals within the same beam have the same Cell ID, but different UIDs and different seeds.
[0134] However, if the modulo is taken directly, slight differences in the seed value may result in similar time slot indices (for example, Seed=100 and Seed=164 both have a modulo of 36 when N=64).
[0135] Judgment criteria: The introduction of non-uniform distribution breaks the linear relationship between seed value and modulus result, so that small differences in seed value may produce large differences in time slot index after mapping.
[0136] 2. Optimization of historical collision statistics: The ground control center can collect historical collision rate data for each beam and time slot.
[0137] For time slots with high collision rates, reduce their probability of being selected in the distribution function; for time slots with low collision rates, increase their probability.
[0138] Judgment criterion: distribution function It is not uniform, but dynamically adjusted based on historical statistics, so that terminals tend to choose "less popular" time slots.
[0139] 3. Geographical location implies dispersion: Within the same beam, terminals in different geographical locations may have the same Cell ID but different UIDs when calculating the seed, resulting in different seeds.
[0140] By using non-uniform distribution, the seed value is "pushed" to different regions of the time window from the terminal of a certain range.
[0141] Judgment criteria: The distribution function is designed to match the geographical distribution model of the terminals within the beam (for example, the beam is divided into multiple virtual sub-regions, each sub-region corresponding to different time slot preferences).
[0142] 2. Specific implementation steps of non-uniform selection (in conjunction with S5 of this embodiment): In step S5 of this embodiment, the terminal performs the following process: S5-1: Obtain access time slot and select seed: Step S4 has been completed, and the integer seed (e.g., a 32-bit unsigned integer) has been obtained.
[0143] S5-2: Convert the seed into a probability value: Normalize Seed to a floating-point number in the interval (0, 1): ; (Assuming Seed is 32-bit); S5-3: Applying a non-uniform distribution function: Choose a predefined non-uniform distribution function PDF(x), for example: Beta distribution: ; By adjusting Control the shape of the distribution (e.g., α=2, β=5 to bias the probability towards the front of the window).
[0144] Empirical Optimization Distribution: Based on historical collision statistics, a discrete probability array P[0..N−1] is directly defined, satisfying... Furthermore, P[i] is inversely proportional to the historical collision rate.
[0145] Calculate the cumulative distribution function .
[0146] Find satisfaction .
[0147] In practice, the CDF table can be pre-calculated, and binary search can be used for quick location.
[0148] The CDF table refers to the Cumulative Distribution Function Table. In the random access scheme of this embodiment, the CDF table is a preset mapping table. Its function is to "stretch" or "map" uniformly distributed random numbers (or probability values) to a non-uniformly distributed interval, thereby realizing "non-uniform time slot selection".
[0149] In traditional random access, terminals typically select time slots uniformly and randomly (e.g., time slots 0 to 63, with each time slot having a probability of 1 / 64 of being selected).
[0150] However, in low-Earth orbit satellite IoT scenarios, if all terminals are evenly distributed, it may lead to extremely severe collisions in certain time slots at a certain moment. To solve this problem, this embodiment introduces a "non-uniform selection" mechanism: 1. Objective: To distribute terminal access across the timeline to reduce the probability of collisions.
[0151] 2. Method: The terminal generates a probability value between [0, 1] based on its own "access slot selection seed" (a pseudo-random number generated by hashing).
[0152] 3. Mapping: Using the CDF table, this uniform probability value of [0, 1] is mapped to a non-uniform time slot index (for example, time slots 10, 25, and 40 have a higher probability of being selected, while time slots 0, 31, and 63 have a lower probability of being selected).
[0153] The workflow of the CDF table is as follows: Step (1): Generate probability values The terminal converts the "access time slot selection seed" into a probability value p between [0, 1].
[0154] (For example: after the seed is hashed, it can be moduloed or normalized to obtain a floating-point number, such as 0.37) Step (2): Table lookup and mapping The terminal pre-configures a non-uniform distribution function (such as a weighted distribution or a distribution optimized based on historical collision statistics) and calculates its cumulative distribution function (CDF), storing it as a CDF table.
[0155] For example: Assuming there are 4 time slots, we hope their selection probability is: The corresponding CDF table is: The time slot index mapped to the probability value range: [0.00, 0.05) 0; [0.05, 0.20) 1; [0.20, 0.50) 2; [0.50, 1.00] 3; Step (3): Determine the target time slot: The terminal receives the probability value p=0.37 and looks it up in the table: 0.37 falls within the interval [0.20, 0.50) → mapped to time slot 2; Therefore, the terminal selected time slot 2 as the target access time slot.
[0156] S5-4: Determine the target access time slot: get This refers to the target access time slot. 3. Detailed Implementation: In step S5, the terminal converts the access slot selection seed (Seed) generated in step S4 into a floating-point number p in the interval (0, 1). The terminal presets a non-uniform distribution function PDF(x) (e.g., a Beta(2, 5) distribution or a discrete probability distribution defined based on historical collision statistics) and calculates its cumulative distribution function CDF(x). The terminal determines the interval where p lies by looking up the CDF table, thereby mapping the target slot index (SlotIndex) within the random access window. This non-uniform mapping mechanism allows terminals with similar geographical locations to access the network in a dispersed manner along the time axis, effectively reducing the probability of collisions.
[0158] 4. Example calculation: Assumption: =1070191403 (the previous example); ; The random access window N=64 time slots use a Beta(2,5) distribution, as shown in Table 2. The CDF table is pre-calculated (simplified example): Table 2 CDF Search: p=0.249 falls between CDF(10 / 64)=0.15 and CDF(20 / 64)=0.40 → select SlotIndex=15 (interpolation or rounding down to the nearest integer).
[0159] Compared to the traditional uniform modulus (Seed mod 64 = 27), an earlier time slot (15) was selected here, and the distribution is biased towards the front of the window (Beta(2,5) characteristic), which can smoothly access the peak.
[0160] 5. Judgment basis: Criteria for determining non-uniform target access time slots: The correlation of seed sources → Breaking the linear relationship and avoiding time slot clustering caused by minor differences in seeds.
[0161] Historical collision statistics → Dynamically adjust the distribution, favoring time slots with low collision rates.
[0162] Geographically dispersed requirements → The distribution function design matches the geographical distribution of terminals within the beam, thus dispersing the time slots of adjacent terminals.
[0163] Predefined distribution function → Ensures that the terminal and satellite have a consistent understanding of the algorithm, and that the calculation is simple.
[0164] 6. Advantages and Innovations: Reduce collisions: Distribute access along the timeline to reduce contention in the same time slot.
[0165] Adaptive: The distribution function can be dynamically adjusted according to the network status.
[0166] Low complexity: Beta distribution or lookup table method has low computational cost, making it suitable for IoT terminals.
[0167] Fairness: Each terminal still has an equal opportunity, but the opportunities are staggered in time.
[0168] Furthermore, using the target compensation value to perform uplink frequency pre-compensation on the preset random access preamble sequence includes: The frequency compensation value for each symbol is calculated according to a preset formula; Based on the frequency compensation value, the sampling points of the preamble sequence are multiplied by a complex exponential rotation factor to complete the uplink frequency pre-compensation.
[0169] Specifically, in this embodiment, S6: In the target access time slot, the target compensation value is used to perform uplink frequency pre-compensation on the preset random access preamble sequence, and the compensated preamble sequence is sent to the target low-orbit satellite to initiate random access.
[0170] In step S6 of the method in this embodiment, the terminal uses the target compensation value (the value closest to the theoretical Doppler frequency offset selected from the Doppler pre-compensation parameter set sent by the satellite) to perform uplink frequency pre-compensation on the preset random access preamble sequence in the selected target access time slot, and then sends the compensated preamble sequence to the satellite.
[0171] Purpose: This compensates for the Doppler frequency shift and Doppler rate of change caused by the high-speed motion of low-orbit satellites, enabling satellite receivers to detect the preamble sequence within the expected frequency range.
[0172] Improve the success rate of random access and reduce access failures caused by frequency mismatch.
[0173] Reduce the terminal's transmit power requirement (because the receive signal-to-noise ratio is higher after frequency alignment).
[0174] 1. The principle of uplink frequency pre-compensation: The Doppler effect causes the uplink carrier frequency transmitted by the terminal to shift at the satellite receiver: ; in This represents the Doppler frequency offset (which can be positive or negative).
[0175] In order to recover the correct nominal frequency at the satellite receiver The terminal needs to pre-compensate for this frequency offset before transmission: ; In this embodiment, Use target compensation value Replace (discretized approximation).
[0176] Because the Doppler changes of low-Earth orbit satellites are relatively rapid, if the lead sequence is long, the rate of Doppler change must also be considered. To mitigate the impact of linear frequency precompensation: ; in t is the reference time to which the parameter set applies, and t is the current launch time.
[0177] 2. Specific implementation methods (in conjunction with S6 of this embodiment): In step S6 of this embodiment, the terminal performs the following procedure: S6-1: Obtain the target compensation value: Step S3 has been completed, selecting the value closest to the theoretical Doppler frequency offset from the Doppler pre-compensation parameter set sent by the satellite. (Unit: Hz).
[0178] Simultaneously obtain and (If the parameter group contains it).
[0179] S6-2: Determine the preamble sequence launch time: Let the start time of the target access time slot be... The duration of the leader sequence is (e.g., 5ms).
[0180] The emission time of the nth symbol in the preamble sequence is: ; in The symbol period.
[0181] S6-3: Calculate symbol-level frequency compensation values: If the preamble sequence is short (e.g., 1-2 OFDM symbols or a Zadoff-Chu sequence), the frequency offset of the entire preamble sequence can be approximated as constant, and it can be used directly. Compensation will be provided. ; If the leader sequence is long, the Doppler rate of change needs to be considered, and the compensated frequency for each symbol needs to be calculated: ; To simplify hardware implementation, only the frequencies at the beginning and end of the preamble sequence need to be calculated, while intermediate symbols are calculated using linear interpolation.
[0182] S6-4: Hardware implementation of frequency precompensation: In the radio frequency (RF) transmit chain of a terminal, frequency precompensation is typically achieved in the following ways: Method 1: Baseband digital frequency precompensation (recommended, suitable for software-defined radio (SDR) architecture) In baseband digital signal processing (DSP), the sampling points of the preamble sequence are multiplied by a complex exponential twitch factor: ; in: These are the sampling points of the original leader sequence. For total compensation frequency offset, For baseband sampling rate, k For sampling point index; This operation shifts the spectrum of the preamble sequence across the entire baseband band. This enables frequency pre-compensation.
[0183] Method 2: RF VCO / PLL Tuning: Calculated fcomp Write the frequency control word (FTW) to the phase-locked loop (PLL) or voltage-controlled oscillator (VCO).
[0184] During the preamble sequence, the control word remains unchanged (or is updated by symbol, if fast tuning is supported).
[0185] The hardware needs to support sufficient tuning range (e.g., ±25 kHz) and tuning resolution (e.g., 1 Hz).
[0186] Method 3: Mixed method: For long preamble sequences, most frequency offsets are first processed using baseband digital pre-compensation, and then fine-tuned using PLL to balance flexibility and hardware cost.
[0187] S6-5: Preamble sequence after launch compensation: At the start time of the target access time slot The transmission is initiated, and the pre-compensated preamble sequence is sent via the uplink carrier.
[0188] Satellite receiver at the expected frequency Preamble detection was performed nearby; due to pre-compensation by the terminal, the actual received frequency was close to [the expected frequency]. The success rate and sensitivity of detection have been significantly improved. 3. Detailed Implementation: In step S6, the terminal at the start time of the target access time slot Obtain the target compensation value selected in step S3. and Doppler rate of change (If available). The terminal calculates the transmission time tn of the nth symbol in the preamble sequence, and then uses the formula... The frequency compensation value for each symbol is calculated. Subsequently, in the baseband digital signal processing unit, the terminal multiplies the preamble sequence sampling points by a complex exponential twitch factor. Uplink frequency pre-compensation is completed. The compensated preamble sequence is then transmitted to the satellite via the radio frequency front-end. This method can effectively counteract the Doppler shift caused by the high-speed motion of low-Earth orbit satellites, significantly improving the success rate of random access.
[0190] 1. Formula derivation and correspondence: The formula for the complex exponential twitch factor given in the patent is as follows: In practical engineering applications, in order to accurately compensate for frequency deviations that change over time, the "frequency compensation value" is usually... "Directly replace the instantaneous frequency deviation Δf in the formula."
[0191] Therefore, the actual physical meaning of this formula (based on the calculations above) is: This refers to the "frequency compensation value of the nth symbol" calculated earlier. It is a quantity that varies with the symbol number n (because it includes the Doppler rate of change). ,Right now = .
[0192] Baseband sampling rate.
[0193] : The sampling point number (or time offset) of the current sampling point within the symbol.
[0194] 2. Specific usage steps: In the baseband digital signal processing unit The usage process is as follows: 1. Determine the symbol index: Determine that the current symbol being processed is the nth symbol in the preamble sequence, and calculate the corresponding emission time of that symbol. (Or directly use the symbol index n multiplied by the symbol period).
[0195] 2. Obtain the compensation value: Call the previously calculated value. This value represents the frequency offset that needs to be adjusted to counteract the Doppler effect caused by the satellite's high-speed motion.
[0196] 3. Generate the rotation factor: Substitute into the formula This generates a complex rotation factor (the phase changes linearly with time).
[0197] 4. Multiplication operation (frequency shift): Multiply the sample point (time domain signal) of the nth symbol of the preamble sequence with the above rotation factor.
[0198] Mathematical essence: Multiplying the time domain by a complex exponent is equivalent to shifting the frequency domain. This is equivalent to shifting the signal's spectrum towards zero frequency (or the target center frequency), thereby canceling out the frequency offset originally caused by the Doppler effect.
[0199] 4. Example calculation: Assumption: uplink carrier frequency ; Target compensation value (Satellite proximity terminal); Doppler rate of change ; Reference time =10:00:00.000; Leader sequence start time =10:00:05.000, Duration =5ms, symbol period =1ms; Baseband sampling rate =1.92MHz; calculate: Symbol 0 ( =10:00:05.000): ; The 4th symbol ( =10:00:09.000): ; Baseband compensation: multiply the sampling point k by (Symbol 0), and so on.
[0200] 5. Summary: Specific methods for uplink frequency pre-compensation: Calculate the compensation frequency: based on the target compensation value With Doppler rate of change Consider the symbol emission time.
[0201] Baseband digital compensation: Spectral shift is achieved through a complex exponential rotation factor, which is flexible and accurate.
[0202] RF tuning compensation: The transmit frequency is directly tuned via the PLL / VCO control word, which is suitable for hardware implementation.
[0203] Hybrid compensation: Combining baseband and radio frequency to balance performance and cost.
[0204] This embodiment also proposes a random access device for an IoT terminal based on low-Earth orbit satellites, configured on the IoT terminal, including: The information receiving module is used to monitor and receive downlink synchronization signals and system information blocks broadcast by satellite.
[0205] The Doppler calculation module is used to calculate the theoretical Doppler frequency offset value based on the satellite ephemeris and the terminal position.
[0206] The parameter selection module is used to select the target compensation value from the Doppler pre-compensation parameter set sent by the satellite.
[0207] The seed generation module is used to generate access time slots and select seeds based on the beam coverage area identifier and the terminal's unique identifier using a hash function.
[0208] The time slot selection module is used to non-uniformly select a target access time slot within a random access window based on the seed.
[0209] The signal processing and transmission module is used to pre-compensate the frequency of the preamble sequence using the target compensation value, and then transmit the compensated preamble sequence in the target access time slot.
[0210] like Figure 1 As shown, the random access method in this embodiment specifically includes the following steps: 101: After the IoT terminal is woken up, it listens for and successfully receives downlink signals from a low-Earth orbit satellite (such as a satellite in the "Tianqi" constellation), and parses them to obtain the synchronization signal and system information block. The system information block contains: the satellite's precise ephemeris at this moment, the coverage area number of the current beam Cell_ID=5, and a Doppler pre-compensation parameter set F_comp_set = [-12kHz, -6kHz, 0kHz, +6kHz, +12kHz].
[0211] 102: The terminal obtains its geographical location based on its built-in GPS / BeiDou module, and calculates the theoretical Doppler frequency offset of the current link as +7.3kHz in real time by combining it with satellite ephemeris.
[0212] 1. Calculation principle: According to the classical Doppler formula, in the non-relativistic case (where the satellite's velocity is much less than the speed of light), the frequency shift is: in: ; Theoretical Doppler frequency deviation (unit: Hz, positive value indicates far away, negative value indicates close). Radial velocity between the satellite and the terminal (unit: m / s, velocity component along the line connecting the two). Uplink carrier wavelength (unit: m); : The velocity vector of the satellite relative to the terminal; : The unit direction vector pointing from the terminal to the satellite; In this embodiment, the value is calculated locally by the terminal, and the input is: Satellite ephemeris (position + velocity vector); The terminal's own location (which can be obtained via built-in GNSS); uplink carrier frequency (Given constants); 2. Calculation steps (in conjunction with the method in this embodiment): Step 1: Obtain the position vectors of the satellite and the terminal; The terminal extracts satellite ephemeris information (position in ECEF coordinate system) from the downlink signal. With speed .
[0213] The terminal obtains its own position in the ECEF coordinate system via GNSS. .
[0214] Calculate the vector pointing from the terminal to the satellite: ; Step 2: Calculate the unit direction vector: ; Step 3: Calculate the relative velocity vector: ; Typical terminal speed It is much smaller than the satellite speed and can be approximated as 0, but is retained for precise calculations.
[0215] Step 4: Calculate the radial velocity: ; When the value is positive, the satellite is far from the terminal, resulting in a positive Doppler frequency shift; when it is negative, the satellite is close to the terminal, resulting in a negative Doppler frequency shift.
[0216] Step 5: Calculate the theoretical Doppler frequency offset: ; Where c is the speed of light (≈ 3 × 10⁻⁶) 8 m / s), This is the uplink carrier frequency.
[0217] Step 6: Time Synchronization: Ephemeris time, terminal local time, and GNSS time must be unified to UTC or GPS time to ensure that position / velocity data correspond to the same time.
[0218] In this embodiment, the current time or the expected access time is usually taken as the calculation time point.
[0219] 3. Specific application of the method in this embodiment: In step S2 of this embodiment, the terminal performs the above calculation to obtain... ,in This is the moment when a random access is planned to be initiated.
[0220] Subsequently, in step S3, the terminal selects from the Doppler pre-compensation parameter set sent by the satellite... The closest value is used as the target compensation value. It is used for frequency pre-correction during preamble transmission.
[0221] The benefits of doing this: The theoretical values calculated locally on the terminal are highly accurate and can reflect the true relative motion state.
[0222] The parameter set for satellite broadcasting is discrete (e.g., {-12kHz, -6kHz, 0kHz, +6kHz, +12kHz}). The terminal matches the nearest term with the theoretical value, which reduces the terminal hardware complexity and ensures the effectiveness of the compensation.
[0223] 4. Example calculation (numerical demonstration); Assumption: Uplink frequency =1.6GHz→ λ=0.1875m; Satellite position =(7000km, 0, 0)ECEF; Satellite speed =(0, −7.5km / s, 0); Terminal location =(7000km, 100km, 0); Terminal speed ≈0; calculate =(0, −100km, 0); =(0, −1, 0); =(0, −7500, 0); =(0, −7500, 0)⋅(0, −1, 0)=7500m / s (The satellite is approaching the terminal, so the value should be negative. Note the direction: pointing from the terminal to the satellite. If the satellite is "south" of the terminal, the y-direction is negative.) It is (0, -1, 0). Also (0, -7500, 0), the dot product is positive, indicating that the satellite is moving in the negative y direction, and the distance to the terminal is decreasing, so In reality, it's close, so the negative should be taken. Note the sign definition here; follow the physical definition. Let be the radial velocity of the satellite relative to the terminal. If the distance decreases, then... <0, therefore =−7500); calculate =−7500 / 0.1875=−40kHz; The theoretical Doppler frequency offset is -40 kHz, which means that the terminal needs to increase the transmission frequency by 40 kHz to compensate for the frequency drop caused by the satellite approaching. 5. Detailed Implementation: In step S2, the terminal uses the ephemeris information broadcast by the satellite (including the satellite's position vector in the ECEF coordinate system) to... With velocity vector ) and the position vector obtained by its own GNSS positioning Calculate the vector pointing from the terminal to the satellite. And normalize to obtain the unit direction vector The terminal further calculates the relative velocity vector. And calculate the radial velocity. Finally, based on the uplink carrier wavelength... Calculate the theoretical Doppler frequency offset. This value can be negative (satellite is approaching) or positive (satellite is moving away), and the terminal selects the target compensation value from the closest Doppler pre-compensation parameter group in step S3 accordingly.
[0225] 6. Summary: In this embodiment, the theoretical Doppler frequency offset value serves as a bridge connecting the satellite ephemeris / terminal location with the selection of pre-compensation parameters. Its calculation process is based on the classical Doppler formula and combined with ECEF coordinate vector operations, with sufficient accuracy to support the high dynamic random access scenario of low-Earth orbit satellite IoT.
[0226] The calculation process of theoretical Doppler frequency offset: 101: The terminal selects the value "+6kHz" that is closest to +7.3kHz from F_comp_set as the target compensation value.
[0227] 102: The terminal reads its own unique International Mobile Equipment Identity (IMEI) (e.g., 869506030000001), concatenates it with the received Cell_ID (=5) to form the string "5_869506030000001", inputs it into a pre-stored hash function (e.g., a truncated output of SHA-256) to obtain a hash value H.
[0228] 103: See reference Figure 2 The random access window contains N time slots (e.g., N=64). In traditional methods, terminals randomly select a time slot with equal probability from 0 to N-1, leading to potential concentration of terminals in a few time slots (collision hotspots). In this invention, the time slot selection module maps the hash value H to a probability value within the (0, 1) interval that follows a specific non-uniform distribution (such as a Beta distribution or a discrete distribution optimized based on historical collision statistics), and then maps this probability value to a specific time slot index. For example, by designing a distribution function, terminals with geographically close proximity (whose hash values may have some correlation) are "pushed" to different parts of the time window, thereby achieving active distribution of access load on the time axis. Assume that the target access time slot calculated in this case is time slot 23.
[0229] 104: When the terminal arrives at the 23rd time slot, it uses a compensation value of +6kHz to pre-compensate the carrier frequency of the random access preamble sequence to be transmitted, and then transmits the preamble sequence.
[0230] Example 2: See Figure 3 This embodiment provides an apparatus for implementing the above method, which is integrated into an Internet of Things (IoT) terminal and includes: The information receiving module 301, corresponding to step 101, is responsible for receiving and parsing downlink signals.
[0231] The Doppler calculation module 302, corresponding to step 102, is responsible for calculating the theoretical Doppler frequency offset.
[0232] The parameter selection module 303, corresponding to step 103, is responsible for selecting the optimal Doppler compensation value.
[0233] The seed generation module 304, corresponding to step 104, is responsible for performing hash operations to generate a unique seed.
[0234] The time slot selection module 305, corresponding to step 105, has a built-in non-uniform distribution mapper and is responsible for determining the specific access time slot based on the seed.
[0235] The signal processing and transmission module 306, corresponding to step 106, is responsible for frequency pre-compensation and signal transmission.
[0236] The corresponding operations on the satellite side can be summarized as follows: the satellite broadcasts the necessary parameters (ephemeris, Cell_ID, F_comp_set) in its system information. After receiving the pre-compensated preamble sequence sent by the terminal, the satellite receiver only needs to perform detection within a small frequency uncertainty range, greatly simplifying the detection complexity. The reduction in access collisions also reduces the signaling overhead for collision resolution on the satellite side.
[0237] The embodiments described above are merely preferred embodiments of the present invention and are not intended to limit the scope of the present invention. Various modifications and improvements made to the technical solutions of the present invention by those skilled in the art without departing from the spirit of the present invention should fall within the protection scope defined by the claims of the present invention.
Claims
1. A method for random access of Internet of Things (IoT) terminals based on low-Earth orbit (LEO) satellites, characterized in that, include: S1. Obtain the downlink synchronization signal and system information block periodically broadcast by the target low-orbit satellite; wherein, the system information block includes: satellite ephemeris information, current beam coverage area identifier, and Doppler pre-compensation parameter set configured for the random access procedure; S2. Calculate the theoretical Doppler frequency offset between the terminal and the satellite based on the satellite ephemeris information and the terminal's own position; S3. In the Doppler pre-compensation parameter group, select a target compensation value that is closest to the theoretical Doppler frequency offset value. S4. Based on the current beam coverage area identifier, generate an access time slot selection seed using a predefined hash function; S5. Based on the access time slot, select a seed and non-uniformly select a target access time slot within a random access time window; S6. In the target access time slot, the target compensation value is used to pre-compensate the uplink frequency of the preset random access preamble sequence, and the compensated preamble sequence is sent to the target low-Earth orbit satellite to initiate random access.
2. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 1, characterized in that, The Doppler pre-compensation parameter set includes: Static Doppler frequency offset estimate, Doppler rate of change, reference time, radial velocity estimate of satellite and terminal, allowable frequency compensation adjustment range, unique identifier of target access satellite, and effective time window of parameters.
3. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 1, characterized in that, The theoretical Doppler frequency offset between the computing terminal and the satellite includes: Obtain the position vectors of the satellite and the terminal; Calculate the unit direction vector based on the position vector; Calculate the relative velocity vector; Calculate the radial velocity based on the unit direction vector and the relative velocity vector; Based on the radial velocity and the uplink carrier wavelength, the theoretical Doppler frequency offset value is obtained.
4. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 3, characterized in that, Obtaining the position vectors of the satellite and the terminal includes: The terminal parses satellite ephemeris information from the downlink signal; wherein, the satellite ephemeris information includes: position and velocity in the ECEF coordinate system; The terminal obtains its position vector through GNSS positioning; Based on the position in the ECEF coordinate system and the position vector of GNSS positioning, calculate the vector pointing from the terminal to the satellite.
5. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 3, characterized in that, The unit direction vector is: in, Unit direction vector, The position vectors of the satellite and the terminal. The magnitude of the position vector; The relative velocity vector is: in, It is a relative velocity vector. For the satellite velocity vector, Let be the terminal velocity vector, representing the velocity vector of the terminal in the ECEF coordinate system at time t; The radial velocity is: in, Radial velocity; The theoretical Doppler frequency offset value is: in, This is the theoretical Doppler frequency offset value. For uplink carrier wavelength, For uplink carrier frequency, The speed of light in a vacuum.
6. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 1, characterized in that, Generating an access slot selection seed includes: Obtain beam coverage area identifier; Obtain the terminal's unique identifier; The beam coverage area identifier and the terminal unique identifier are concatenated into a byte sequence and used as the input to the predefined hash function; Input the byte sequence into the predefined hash function; Take the first few bytes of the hash output and convert them into an unsigned integer. The unsigned integer is the access time slot selection seed.
7. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 1, characterized in that, Non-uniform selection of a target access slot within a random access time window includes: Convert the access time slot selection seed into a probability value; The terminal is pre-set with a non-uniform distribution function, and the cumulative distribution function of the non-uniform distribution function is calculated; The terminal determines the interval in which the probability value is located by looking up the cumulative distribution function table, thereby mapping the target time slot index SlotIndex within the random access window, which is the target access time slot.
8. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 1, characterized in that, Using the target compensation value to perform uplink frequency precompensation on the preset random access preamble sequence includes: The frequency compensation value for each symbol is calculated according to a preset formula; Based on the frequency compensation value, the sampling points of the preamble sequence are multiplied by a complex exponential rotation factor to complete the uplink frequency pre-compensation.
9. The method for random access of IoT terminals based on low-Earth orbit satellites according to claim 8, characterized in that, The preset formula is: in, This is the frequency compensation value for each symbol in the preamble sequence. For the target compensation value, For Doppler rate of change, The transmission time of the nth symbol in the preamble sequence. For uplink carrier frequency, For reference time.