Satellite selection method, positioning method, device, satellite communication terminal and medium
Through the satellite grouping method based on elevation and azimuth angle, the calculation complexity and accuracy of the satellite selection method when the number of low-orbit satellites is large, and the rapid and accurate positioning of the receiver under large-scale constellations is achieved.
Patent Information
- Application Number
- CN202510502691.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-21
- Publication Date
- 2025-08-19
- Estimated Expiration
- 2045-04-21
AI Technical Summary
The existing satellite selection method cannot take into account both positioning accuracy and calculation complexity. Especially when the number of low-orbit satellites is large, the receiver cannot use all visible satellites for positioning, resulting in high computational complexity and insufficient accuracy.
By obtaining the number of receiver channels, satellite grouping is performed based on the elevation angle and azimuth angle, target satellites are selected, and spatial partitioning is performed using the elevation angle of the satellite relative to the receiver, thereby performing satellite grouping, and selecting satellites based on the packet, avoiding complex matrix operations.
The satellite selection process is optimized, the calculation amount is reduced, and the receiver is quickly and accurately positioned and solved under large-scale navigation constellations. It is suitable for mixed large-scale constellations such as multi-GNSS systems and low-orbit navigation constellations.
Smart Images

Figure CN120065262B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of satellite navigation technology, and in particular to a satellite selection method, a positioning method, a device, a satellite communication terminal and a medium. Background Art
[0002] Low-orbit constellation satellites have the advantages of large number, global coverage, and inter-satellite interconnection. Using low-orbit satellites to broadcast navigation enhancement signals can effectively improve the positioning accuracy and integrity capabilities of navigation users, and effectively expand the scope of satellite navigation applications.
[0003] With the deployment of low-orbit navigation constellations, the number of visible satellites for receivers has increased. If all of them are used for positioning solutions, the positioning accuracy will be greatly improved compared to a single navigation system. However, due to the limitations of the number of hardware channels and signal processing capabilities, it is impossible to use all visible stars for positioning, and satellite selection becomes inevitable.
[0004] However, the satellite selection method in the related art cannot take into account both accuracy and computational complexity. Summary of the Invention
[0005] In view of this, the present invention provides a satellite selection method, positioning method, device, satellite communication terminal and medium to solve the problem that the satellite selection method in the related art cannot take into account both accuracy and computational complexity.
[0006] In a first aspect, the present invention provides a satellite selection method, applied to a satellite communication terminal, the method comprising:
[0007] Acquire multiple satellites to be selected;
[0008] Acquire the number of receiver channels, and determine the number of groups of the satellites to be selected based on the number of receiver channels;
[0009] Dividing the plurality of satellites to be selected into a plurality of groups according to the azimuth angles and elevation angles of the satellites to be selected and the number of groups to obtain a plurality of satellite groups to be selected;
[0010] A target satellite is selected from each of the candidate satellite groups.
[0011] In an optional implementation, obtaining a plurality of satellites to be selected includes:
[0012] Acquire a plurality of first satellites whose satellite signals are received by the receiver;
[0013] respectively obtaining the elevation angles of the first satellites;
[0014] The first satellites whose elevation angles are greater than or equal to a preset cutoff angle are selected as the candidate satellites.
[0015] In an optional implementation, the number of groups is equal to the product of the number of elevation divisions and the number of azimuth divisions, and the number of elevation divisions and the number of azimuth divisions are determined based on the number of receiver channels;
[0016] The step of dividing the plurality of satellites to be selected into a plurality of groups according to the azimuth and elevation angles of the satellites to be selected and the number of groups to obtain a plurality of satellite groups to be selected comprises:
[0017] Obtaining the maximum elevation angle, the minimum elevation angle, the maximum azimuth angle, and the minimum azimuth angle of the plurality of satellites to be selected;
[0018] Determine an elevation angle range within each elevation angle partition and an azimuth angle range within each azimuth angle partition based on the maximum elevation angle, the minimum elevation angle, the maximum azimuth angle, the minimum azimuth angle, the number of elevation angle partitions, and the number of azimuth angle partitions;
[0019] The satellites to be selected are divided into corresponding satellite groups to be selected according to the azimuth and elevation angles of the satellites to be selected, and the elevation angle ranges within each elevation angle partition and the azimuth angle ranges within each azimuth angle partition.
[0020] In an optional implementation, obtaining the number of receiver channels and determining the number of groups of the satellites to be selected based on the number of receiver channels includes:
[0021] Obtaining the set azimuth partition number, where the azimuth partition number is greater than or equal to a preset value;
[0022] The number of elevation partitions is determined based on the number of receiver channels and the number of azimuth partitions; the number of partitions is less than or equal to the number of receiver channels.
[0023] In an optional implementation, selecting a target satellite from each of the groups of satellites to be selected includes:
[0024] Selecting one of the candidate satellites from each of the candidate satellite groups as the target satellite;
[0025] If the number of the target satellites is less than the number of the receiver channels, one or more of the unselected candidate satellites are selected as the target satellites, so that the number of the target satellites is equal to the number of the receiver channels.
[0026] In an optional implementation, after selecting the target satellite from each of the candidate satellite groups, the method further includes:
[0027] Based on the target satellite, one or more of a geometry matrix, a weight matrix, and a geometric dilution of precision are calculated.
[0028] In a second aspect, the present invention provides a satellite positioning method, the method comprising:
[0029] Selecting a positioning satellite according to the satellite selection method of the first aspect or any corresponding embodiment thereof;
[0030] Positioning is performed using the selected positioning satellite.
[0031] In a third aspect, the present invention provides a satellite selection device, the device comprising:
[0032] A candidate satellite acquisition module is used to acquire multiple candidate satellites;
[0033] A grouping number determination module is used to obtain the number of receiver channels and determine the number of groups of the satellites to be selected based on the number of receiver channels;
[0034] a grouping module, configured to group the plurality of satellites to be selected into a plurality of groups according to the azimuth and elevation angles of the satellites to be selected and the number of groups, thereby obtaining a plurality of satellite groups to be selected;
[0035] The satellite selection module is used to select a target satellite from each of the candidate satellite groups.
[0036] In a fourth aspect, the present invention provides a satellite communication terminal, comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the computer instructions to thereby execute the satellite selection method of the above-mentioned first aspect or any corresponding embodiment thereof, or execute the satellite positioning method of the above-mentioned second aspect or any corresponding embodiment thereof.
[0037] In a fifth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the satellite selection method of the above-mentioned first aspect or any corresponding embodiment thereof, or to execute the satellite positioning method of the above-mentioned second aspect or any corresponding embodiment thereof.
[0038] In a sixth aspect, the present invention provides a computer program product comprising computer instructions, the computer instructions being used to enable a computer to execute the satellite selection method of the first aspect or any corresponding embodiment thereof, or to execute the satellite positioning method of the second aspect or any corresponding embodiment thereof.
[0039] The satellite selection method, positioning method, apparatus, satellite communication terminal, and medium provided in this embodiment utilize the elevation and azimuth angles of satellites relative to the receiver to perform spatial partitioning, thereby grouping satellites and selecting satellites based on the satellite grouping. This optimizes the satellite selection process without adding additional computation to the receiver, avoids complex and resource-intensive operations such as matrix inversion, and reduces the computational process and workload for the receiver when working with large-scale navigation constellations, facilitating rapid and accurate positioning solutions. This method is applicable to the rapid selection of satellites in large-scale navigation constellations, such as those in mixed large-scale constellations such as multi-GNSS systems and low-orbit navigation constellations. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in related technologies, the following briefly introduces the drawings required for use in the specific embodiments or related technical descriptions. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0041] Figure 1 is a schematic flow chart of a satellite selection method according to an embodiment of the present invention;
[0042] Figure 2 is a schematic diagram of grouping satellites to be selected according to an embodiment of the present invention;
[0043] Figure 3 is a schematic flow chart of another satellite selection method according to an embodiment of the present invention;
[0044] Figure 4 is a flowchart of another satellite selection method according to an embodiment of the present invention;
[0045] Figure 5 is a schematic flow chart of another satellite selection method according to an embodiment of the present invention;
[0046] Figure 6 is a structural block diagram of a satellite selection device according to an embodiment of the present invention;
[0047] Figure 7 1 is a schematic diagram of the hardware structure of a satellite communication terminal according to an embodiment of the present invention. DETAILED DESCRIPTION
[0048] To make the purpose, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without making creative efforts shall fall within the scope of protection of the present invention.
[0049] The positioning accuracy of a satellite receiver is almost positively correlated with its geometric dilution of precision (GDOP). A higher GDOP generally indicates better positioning accuracy. The goal of satellite selection is to minimize the GDOP, but solving for it involves complex operations such as matrix transposition, matrix multiplication, and matrix inversion. Calculating and comparing GDOP values is clearly unsuitable for receivers with limited computing resources. Related algorithms for rapid satellite selection, such as the maximum tetrahedron volume method, reduce some matrix operations by traversing the volume of a polyhedron formed by any four satellites. However, current hardware allows for the selection of far more than four satellites, and the satellite selection results obtained by this method are inaccurate.
[0050] In order to enable the receiver to achieve high-precision positioning solutions under limited conditions, an embodiment of the present invention proposes a method for rapidly selecting satellites for future large-scale constellations with complex configurations.
[0051] According to an embodiment of the present invention, an embodiment of a satellite selection method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of executable computer instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0052] In this embodiment, a satellite selection method is provided, which can be used in a satellite communication terminal. The satellite communication terminal has a satellite signal receiver. Figure 1 FIG. 1 is a flow chart of a satellite selection method according to an embodiment of the present invention. Figure 1 As shown, the process includes the following steps:
[0053] Step S101: Acquire multiple satellites to be selected.
[0054] Specifically, the multiple satellites to be selected may be satellites whose signals can currently be received by the receiver of the satellite communication terminal. The multiple satellites to be selected may include satellites of various orbit types, such as satellites in Low Earth Orbit (LEO), Medium Earth Orbit (MEO), Geostationary Earth Orbit (GEO), and Inclined Geosynchronous Satellite Orbit (IGSO). For example, they may be satellites in a navigation constellation that integrates the Global Navigation Satellite System (GNSS) and a low-orbit system.
[0055] In some optional specific implementations, step S101, i.e., obtaining a plurality of satellites to be selected, includes:
[0056] Step S1011, obtaining a plurality of first satellites whose satellite signals are received by the receiver;
[0057] Step S1012, respectively obtaining the elevation angle of the first satellite;
[0058] Step S1013 selects the first satellites whose elevation angles are greater than or equal to a preset cutoff angle as the candidate satellites. In other words, the first satellites whose elevation angles are less than the preset cutoff angle are eliminated. The preset cutoff angle can be determined based on the number of first satellites (i.e., visible satellites). If the number of first satellites is smaller than the number of receiver channels, the preset cutoff angle can be set to 5 degrees. If the number of first satellites is larger than the number of receiver channels, the preset cutoff angle can be set to 10 degrees or even 15 degrees.
[0059] Specifically, the elevation and azimuth angles of the satellite can be calculated using the observation vector of the satellite at the satellite communication terminal position. Calculate the elevation angle of the satellite and azimuth The calculation formula is as follows:
[0060]
[0061]
[0062] in, is the coordinate difference in the east direction between the satellite position and the satellite communication terminal position in the station center coordinate system, is the coordinate difference in the north direction between the satellite position and the satellite communication terminal position in the station center coordinate system, It is the vertical coordinate difference between the satellite position and the satellite communication terminal position in the station center coordinate system.
[0063] Step S102: Acquire the number of receiver channels, and determine the number of groups of the satellites to be selected based on the number of receiver channels.
[0064] Specifically, the number of groups may be equal to the number of receiver channels, or may not be equal to the number of receiver channels.
[0065] Step S103, dividing the plurality of satellites to be selected into a plurality of groups according to the azimuth and elevation angles of the satellites to be selected and the number of groups, to obtain a plurality of satellite groups to be selected. For example, Figure 2 In the figure, candidate satellites 202 within a dashed box belong to the same candidate satellite group. The candidate satellite azimuth angle Az is the horizontal angle on the ground 203, measured clockwise from the north direction line of the satellite communication terminal (receiver) to the target direction line (the target direction line is the orthographic projection of the line of sight from the satellite communication terminal (receiver) to the satellite on the ground 203). The candidate satellite elevation angle E1 is the angle between the candidate satellite and the horizon at the location of the satellite communication terminal (receiver) on the ground 203.
[0066] Specifically, the azimuth angles of the selected satellites in different groups are all within the azimuth angle range corresponding to the group, and the elevation angles of the selected satellites in different groups are also within the elevation angle range corresponding to the group. The azimuth angle ranges corresponding to different groups do not intersect with each other, and the elevation angle ranges corresponding to different groups do not intersect with each other. The spans of the azimuth angle ranges corresponding to different groups can be the same or different, and the spans of the elevation angle ranges corresponding to different groups can be the same or different.
[0067] In some optional specific implementations, the number of groups is equal to the product of the number of elevation divisions and the number of azimuth divisions, and the number of elevation divisions and the number of azimuth divisions are determined based on the number of receiver channels;
[0068] like Figure 3 As shown, step S103, i.e., dividing the plurality of satellites to be selected into a plurality of groups according to the azimuth angles and elevation angles of the satellites to be selected and the number of groups, to obtain a plurality of satellite groups to be selected, includes:
[0069] Step S1031, obtaining the maximum elevation angle ElMax, the minimum elevation angle ElMin, the maximum azimuth angle AzMax, and the minimum azimuth angle AzMin of the plurality of satellites to be selected.
[0070] Step S1032: Determine the elevation angle range within each elevation angle partition and the azimuth angle range within each azimuth angle partition based on the maximum elevation angle ElMax, the minimum elevation angle ElMin, the maximum azimuth angle AzMax, the minimum azimuth angle AzMin, the number of elevation angle partitions ne, and the number of azimuth angle partitions na.
[0071] Specifically, the elevation partition interval can be determined based on the maximum elevation angle ElMax, the minimum elevation angle ElMin and the number of elevation partitions ne, and the azimuth partition interval can be determined based on the maximum azimuth angle AzMax, the minimum azimuth angle AzMin and the number of azimuth partitions na. Then, the elevation angle range within each elevation partition can be determined based on the maximum elevation angle ElMax, the minimum elevation angle ElMin and the elevation partition interval es, and the azimuth angle range within each azimuth partition can be determined based on the maximum azimuth angle AzMax, the minimum azimuth angle AzMin and the azimuth partition interval as.
[0072] The partition interval as of azimuth and the partition interval es of elevation can be expressed as:
[0073] Because the satellite azimuths are connected end to end, ;
[0074] Because the elevation angles are not connected at the beginning and end, .
[0075] The elevation angle range in each elevation angle zone is:
[0076]
[0077] in, For the The elevation angle range within the elevation angle partition is: .
[0078] The elevation angle range in each azimuth partition is:
[0079]
[0080] in, For the The elevation angle range within the elevation angle partition is: .
[0081] Step S1033: Divide the satellites to be selected into corresponding satellite groups to be selected according to the azimuth and elevation angles of the satellites to be selected, and the elevation angle ranges within the elevation angle partitions and the azimuth angle ranges within the azimuth angle partitions.
[0082] Specifically, the elevation and azimuth angles of each candidate satellite are compared with the boundary values of the corresponding partition range. For example, if a satellite's elevation angle belongs to the i-th elevation partition and its azimuth angle belongs to the j-th azimuth partition, the satellite is classified into the k-th candidate satellite group. k is incremented by 1 in a two-dimensional traversal of the elevation and azimuth partitions. For example, if i = 0 and j = 0, k = 1; if i = 0 and j = 1, k = 2. As i and j are traversed, k increases in sequence.
[0083] The number of groups of satellites to be selected is equal to the product of the number of elevation angle partitions ne and the number of azimuth angle partitions na, corresponding to ne×na intervals in three-dimensional space, that is, ne×na space partitions.
[0084] In some optional specific implementations, the number of groups is equal to the product of the number of elevation divisions and the number of azimuth divisions. The number of elevation divisions and the number of azimuth divisions can be determined in the following manner:
[0085] Step 1: obtaining the set azimuth partition number, which is greater than or equal to 4;
[0086] Step 2: Determine the number of elevation partitions based on the number of receiver channels and the number of azimuth partitions; the number of partitions is less than or equal to the number of receiver channels.
[0087] In the embodiment of the present invention, the elevation and azimuth partitioning principle is to prioritize the azimuth dimension, followed by the elevation dimension, and to ensure that at least the number of azimuth partitions is greater than or equal to 4. Assume that the number of elevation partitions is i, the number of azimuth partitions is j, and the number of receiver channels is N. The number of elevation partitions ne and the number of azimuth partitions na can be expressed as follows:
[0088] ne is N divided by 4, rounded down. This ensures that after azimuth partitioning, the increase in the number of receiver channels can be distinguished by elevation partitioning. 4 can be replaced by an integer greater than 4, such as 5 or 6.
[0089] , na is N divided by ne and rounded down.
[0090] In other optional specific implementations, the number of azimuth divisions may also be greater than a first preset value n (n=5, 6, 7, ...), and the number of elevation divisions may also be greater than a second preset value m (m=4, 5, 6, ...).
[0091] Step S104: Select a target satellite from each of the candidate satellite groups.
[0092] In some optional specific implementations, such as Figure 4 As shown, step S104, namely selecting a target satellite from each of the candidate satellite groups, specifically includes:
[0093] Step S1041: Select one of the candidate satellites from each of the candidate satellite groups as the target satellite.
[0094] Specifically, if there are multiple satellites to be selected in a group of satellites to be selected, the satellite to be selected with the highest elevation angle may be selected.
[0095] Step S1042: If the number of the target satellites is less than the number of the receiver channels, one or more of the unselected candidate satellites are selected as the target satellites, so that the number of the target satellites is equal to the number of the receiver channels.
[0096] Specifically, after selecting one as the target satellite from each of the ne×na candidate satellite groups, if the number of selected target satellites (ne×na) is less than the number of receiver channels N, then (N-ne×na) candidate satellites are selected as target satellites from the remaining candidate satellites that have not been selected as target satellites. For example, (N-ne×na) candidate satellites can be selected as target satellites in descending order of elevation angle.
[0097] Satellite selection based on the GDOP optimization method requires a large number of traversal and calculation of satellite combinations. The satellite selection accuracy is high, but the algorithm is complex and the computational efficiency is low. It is difficult to achieve rapid satellite selection under large-scale constellation conditions. Moreover, with the increase of hardware resources, the number of satellites allowed to be selected increases greatly. The optimization space of GDOP is often not large, and there is no need to increase additional computing resources to repeatedly compare GDOP. Therefore, under such conditions, it is only necessary to ensure that the geometric configuration is better to achieve a better GDOP and achieve higher positioning accuracy.
[0098] The satellite selection method provided in this embodiment uses the satellites' elevation and azimuth angles relative to the receiver to perform spatial partitioning, thereby grouping satellites and selecting satellites based on the satellite grouping. This optimizes the satellite selection process without adding additional computation to the receiver, avoiding complex and resource-intensive operations such as matrix inversion. This reduces the computational process and workload for the receiver when working with large-scale navigation constellations, facilitating rapid and accurate positioning solutions. This method is applicable to the rapid selection of satellites in large-scale navigation constellations, such as those in mixed constellations such as multi-GNSS systems and low-orbit navigation constellations.
[0099] The satellite selection method provided by an embodiment of the present invention includes calculating elevation and azimuth angles, grouping satellites according to the number of receiver channels, and quickly selecting satellites based on the grouping. The principle of this method is to select satellites with relatively dispersed spatial distribution as much as possible through spatial partitioning, avoiding selecting satellites in one place or in a straight line, which will result in a better geometric distribution of satellites in positioning.
[0100] The number of satellite groups (corresponding to the number of spatial partitions) in the satellite selection method provided by the embodiment of the present invention is determined according to the number of receiver channels, which avoids waste of channels and minimizes accuracy loss.
[0101] The satellite selection method provided by the embodiment of the present invention partitions the satellites according to the existing elevation and azimuth angles in the existing receiver processing process, thereby avoiding additional calculations and minimizing the receiver's computing resource overhead, which is beneficial for the receiver to quickly select satellites and perform positioning solutions when facing large-scale navigation constellations.
[0102] In some optional specific implementations, such as Figure 5 As shown, after selecting the target satellite from each of the candidate satellite groups, the method further includes:
[0103] Step S105: Calculate the geometric matrix based on the target satellite , weight matrix and one or more of geometric dilution of precision (GDOP).
[0104] Among them, the geometric matrix The calculation in the station center coordinate system is as follows:
[0105]
[0106] Weight matrix The calculation is as follows:
[0107]
[0108] The GDOP value is calculated as the square root of the sum of the diagonal elements of the weight matrix:
[0109]
[0110] in, 、 … They represent the elevation angle of target satellite 1, the elevation angle of target satellite 2, and so on. N The elevation angle, 、 … They represent the azimuth of target satellite 1, the azimuth of target satellite 2, and so on. N azimuth. is the weight matrix diagonal elements of .
[0111] An embodiment of the present invention further provides a satellite positioning method, comprising:
[0112] First, select a positioning satellite according to any of the methods provided in the above embodiments;
[0113] Then, positioning is performed using the selected positioning satellites.
[0114] This embodiment also provides a satellite selection device for implementing the above-mentioned embodiments and preferred implementations. Details already described will not be repeated. As used below, the term "module" may refer to a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
[0115] This embodiment provides a satellite selection device, such as Figure 6 Shown, including:
[0116] A candidate satellite acquisition module 601 is used to acquire multiple candidate satellites;
[0117] A grouping number determination module 602 is configured to obtain a number of receiver channels and determine a number of groups of the satellites to be selected based on the number of receiver channels;
[0118] A grouping module 603 is configured to group the plurality of satellites to be selected into a plurality of groups according to the azimuth and elevation angles of the satellites to be selected and the number of groups, thereby obtaining a plurality of satellite groups to be selected;
[0119] The satellite selection module 604 is configured to select a target satellite from each of the candidate satellite groups.
[0120] In some optional implementations, the candidate satellite acquisition module 601 includes:
[0121] A first satellite acquisition unit is used to acquire a plurality of first satellites whose satellite signals are received by the receiver;
[0122] an elevation angle obtaining unit, configured to obtain the elevation angles of the first satellites respectively;
[0123] The screening unit is configured to screen out the first satellites whose elevation angles are greater than or equal to a preset cutoff angle as the candidate satellites.
[0124] In some optional implementations, the number of groups is equal to the product of the number of elevation divisions and the number of azimuth divisions, and the number of elevation divisions and the number of azimuth divisions are determined based on the number of receiver channels;
[0125] The grouping module 603 includes:
[0126] An extreme value acquisition unit, configured to acquire a maximum elevation angle, a minimum elevation angle, a maximum azimuth angle, and a minimum azimuth angle of a plurality of the selected satellites;
[0127] a partition range determining unit, configured to determine an elevation range within each elevation partition and an azimuth range within each azimuth partition based on the maximum elevation angle, the minimum elevation angle, the maximum azimuth angle, the minimum azimuth angle, the number of elevation partitions, and the number of azimuth partitions;
[0128] The group division unit is used to divide the candidate satellites into corresponding candidate satellite groups according to the azimuth and elevation angles of the candidate satellites, and the elevation angle range in each elevation angle partition and the azimuth angle range in each azimuth angle partition.
[0129] In some optional implementations, the group number determination module 602 includes:
[0130] An azimuth partition number acquisition unit, configured to acquire the set azimuth partition number, wherein the azimuth partition number is greater than or equal to a preset value;
[0131] An elevation partition number determining unit is configured to determine the elevation partition number based on the number of receiver channels and the number of azimuth partitions; the number of partitions is less than or equal to the number of receiver channels.
[0132] In some optional implementations, the satellite selection module 604 includes:
[0133] A first selection unit is configured to select one of the candidate satellites from each of the candidate satellite groups as the target satellite;
[0134] The second selection unit is configured to select one or more of the unselected candidate satellites as the target satellites if the number of the target satellites is less than the number of receiver channels, so that the number of the target satellites is equal to the number of receiver channels.
[0135] In some optional implementations, the satellite selection device further includes:
[0136] A calculation module is used to calculate one or more of a geometric matrix, a weight coefficient matrix and a geometric dilution of precision factor based on the target satellite.
[0137] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.
[0138] The satellite selection device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.
[0139] The embodiment of the present invention further provides a satellite communication terminal, which can be a user navigation terminal, having the above Figure 6 Satellite selection device shown.
[0140] See also Figure 7 , Figure 7 : is a schematic structural diagram of a satellite communication terminal provided by an optional embodiment of the present invention, such as Figure 7 As shown, the satellite communication terminal includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are interconnected using different buses and can be installed on a common motherboard or installed in other ways as needed. The processor can process instructions executed within the satellite communication terminal, including instructions stored in or on the memory for displaying graphical information of a GUI on an external input / output device (such as a display device coupled to the interface). In some optional embodiments, if desired, multiple processors and / or multiple buses can be used with multiple memories and multiple memories. Figure 7 A processor 10 is taken as an example.
[0141] The processor 10 may be a central processing unit, a network processor, or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit, a programmable logic device, or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic, or any combination thereof.
[0142] The memory 20 stores instructions that can be executed by at least one processor 10, so that the at least one processor 10 executes the method shown in the above embodiment.
[0143] The memory 20 may include a program storage area and a data storage area. The program storage area may store an operating system and application programs required for at least one function; the data storage area may store data generated based on the use of the satellite communication terminal. Furthermore, the memory 20 may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other non-volatile solid-state memory device. In some optional embodiments, the memory 20 may optionally include memory remotely located relative to the processor 10. Such remote memory may be connected to the satellite communication terminal via a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0144] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid-state drive; the memory 20 may also include a combination of the above types of memory.
[0145] The satellite communication terminal further comprises a communication interface 30 for communicating with other devices or a communication network. The communication interface 30 comprises a satellite communication interface for communicating with a satellite.
[0146] The satellite communication terminal also includes an input device and an output device. The processor, memory, input device and output device can be connected via a bus or other means.
[0147] The input device can receive input numeric or character information and generate key signal input related to user settings and function control of the satellite communication terminal, and can include, for example, a touch screen, a keypad, a mouse, a trackpad, a touch pad, a pointer, one or more mouse buttons, a trackball, a joystick, etc. The output device can include, for example, a display device, an auxiliary lighting device (e.g., an LED), and a tactile feedback device (e.g., a vibration motor). Such display devices include, but are not limited to, liquid crystal displays, light emitting diodes, monitors, and plasma displays. In some optional embodiments, the display device can be a touch screen.
[0148] The embodiment of the present invention also provides a computer-readable storage medium. The above-mentioned method according to the embodiment of the present invention can be implemented in hardware, firmware, or implemented as a computer code that can be recorded in a storage medium, or implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and downloaded through a network and will be stored in a local storage medium, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state drive, etc.; further, the storage medium can also include a combination of the above-mentioned types of memory. It can be understood that a computer, a processor, a microprocessor controller or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor or hardware, the method shown in the above embodiment is implemented.
[0149] A portion of the present invention may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should understand that the form in which the computer program instruction exists in a computer-readable medium includes, but is not limited to, a source file, an executable file, an installation package file, etc. Accordingly, the way in which the computer program instruction is executed by the computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium may be any available computer-readable storage medium or communication medium that can be accessed by the computer.
[0150] Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention. Such modifications and variations are all within the scope defined by the appended claims.
Claims
1. A satellite selection method, characterized in that: Applied to a satellite communication terminal, the method includes: Acquire multiple satellites to be selected; Acquire the number of receiver channels, and determine the number of groups of the satellites to be selected based on the number of receiver channels; Dividing the plurality of satellites to be selected into a plurality of groups according to the azimuth angles and elevation angles of the satellites to be selected and the number of groups to obtain a plurality of satellite groups to be selected; Selecting a target satellite from each of the candidate satellite groups respectively; The acquiring the number of receiver channels and determining the number of groups of the satellites to be selected based on the number of receiver channels includes: Obtaining a set azimuth partition number, where the azimuth partition number is greater than or equal to a preset value; The number of elevation partitions is determined based on the number of receiver channels and the number of azimuth partitions; the number of partitions is less than or equal to the number of receiver channels.
2. The method according to claim 1, characterized in that The step of obtaining a plurality of satellites to be selected includes: Acquire a plurality of first satellites whose satellite signals are received by the receiver; respectively obtaining the elevation angles of the first satellites; The first satellites whose elevation angles are greater than or equal to a preset cutoff angle are selected as the candidate satellites.
3. The method according to claim 1, characterized in that The number of groups is equal to the product of the number of elevation divisions and the number of azimuth divisions, and the number of elevation divisions and the number of azimuth divisions are determined based on the number of receiver channels; The step of dividing the plurality of satellites to be selected into a plurality of groups according to the azimuth and elevation angles of the satellites to be selected and the number of groups to obtain a plurality of satellite groups to be selected comprises: Obtaining the maximum elevation angle, the minimum elevation angle, the maximum azimuth angle, and the minimum azimuth angle of the plurality of satellites to be selected; Determine an elevation angle range within each elevation angle partition and an azimuth angle range within each azimuth angle partition based on the maximum elevation angle, the minimum elevation angle, the maximum azimuth angle, the minimum azimuth angle, the number of elevation angle partitions, and the number of azimuth angle partitions; The satellites to be selected are divided into corresponding satellite groups to be selected according to the azimuth and elevation angles of the satellites to be selected, and the elevation angle ranges within each elevation angle partition and the azimuth angle ranges within each azimuth angle partition.
4. The method according to claim 1, wherein The selecting of the target satellite from each of the groups of satellites to be selected comprises: Selecting one of the candidate satellites from each of the candidate satellite groups as the target satellite; If the number of the target satellites is less than the number of the receiver channels, one or more of the unselected candidate satellites are selected as the target satellites, so that the number of the target satellites is equal to the number of the receiver channels.
5. The method according to claim 1, wherein After selecting the target satellite from each of the groups of satellites to be selected, the method further includes: Based on the target satellite, one or more of a geometry matrix, a weight matrix, and a geometric dilution of precision are calculated.
6. A satellite positioning method, characterized in that: include: Selecting a positioning satellite according to the satellite selection method according to any one of claims 1 to 5; Positioning is performed using the selected positioning satellite.
7. A satellite selection device, characterized in that: The device comprises: A candidate satellite acquisition module is used to acquire multiple candidate satellites; A grouping number determination module is used to obtain the number of receiver channels and determine the number of groups of the satellites to be selected based on the number of receiver channels; a grouping module, configured to group the plurality of satellites to be selected into a plurality of groups according to the azimuth and elevation angles of the satellites to be selected and the number of groups, thereby obtaining a plurality of satellite groups to be selected; A satellite selection module is used to select a target satellite from each of the groups of satellites to be selected; The group number determination module includes: An azimuth partition number acquisition unit, configured to acquire a set azimuth partition number, wherein the azimuth partition number is greater than or equal to a preset value; The elevation partition number determining unit is used to determine the number of elevation partitions based on the number of receiver channels and the number of azimuth partitions; the number of groups is less than or equal to the number of receiver channels.
8. A satellite communication terminal, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the satellite selection method according to any one of claims 1 to 5 or the satellite positioning method according to claim 6 by executing the computer instructions.
9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the satellite selection method according to any one of claims 1 to 5 or the satellite positioning method according to claim 6.
Citation Information
Patent Citations
Method for satellite selection of multimode GNSS receiver
CN103954980A