System and method for preventing degradation in quality of bidirectional communication between RTK server and GNSS communication device installed in agricultural machine
The system addresses the challenge of quality degradation in two-way communication for NRTK systems by using a management device to prioritize and maintain connections with multiple RTK servers, ensuring stable communication and improved RTK correction signal quality for autonomous agricultural machinery.
Patent Information
- Application Number
- PCT/KR2024/008980
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-29
- Filing Date
- 2024-06-27
- Publication Date
- 2025-06-05
AI Technical Summary
The existing VRS method for Network RTK (NRTK) systems relies heavily on two-way communication between the RTK server and the GNSS communication device, leading to potential quality degradation and increased computational burden on the RTK server as the number of users increases, especially in scenarios like autonomous agricultural machinery.
A system and method that utilize a management device to manage multiple RTK servers, allowing the RTK rover to maintain connections with multiple servers by prioritizing them based on connection priority scores calculated from communication latency, bandwidth, and geographical factors, ensuring stable two-way communication even under heavy loads.
This approach effectively prevents quality degradation of two-way communication between the RTK server and the GNSS communication device by quickly replacing unstable servers and maintaining optimal connections, even with a large number of GNSS receivers, thus improving the overall quality of RTK correction signals.
Smart Images

Figure KR2024008980_05062025_PF_FP_ABST
Abstract
Description
System and method for preventing quality degradation of two-way communication between an RTK server and a GNSS communication device installed in agricultural machinery
[0001] Embodiments of the present application relate to a system and method for preventing degradation of quality of two-way communication between an RTK server and a GNSS communication device installed in agricultural machinery by maintaining a connection with multiple servers.
[0002] Network RTK (NRTK) systems are a surveying technology designed to correct common errors in global navigation satellite systems (GNSS). Because they utilize both bidirectional and unidirectional communications, they are also called network high-precision positioning technologies.
[0003] In Network RTK (NRTK) systems, the network RTK correction signal, a GNSS network-based RTK correction signal, is generated by collecting RTK correction signals from multiple reference stations located near the user's location and comprehensively utilizing them to calculate an RTK correction signal appropriate for the user's location. These RTK correction signals can provide the precise location of applications equipped with GNSS receivers in real time.
[0004] Network RTK (NRTK) systems have the advantage of being able to generate correction signals that can be applied to a wider area than general RTK systems because they calculate RTK correction signals appropriate for the user's location by utilizing information calculated from multiple reference stations.
[0005] Meanwhile, there are various methods for network RTK correction signals, but the VRS (Virtual Reference System) is widely used in many countries. The VRS (Virtual Reference System) NRTK correction signal is calculated by the NRTK server using information observed from multiple reference stations to calculate an RTK signal appropriate for the user's location, and its format is identical to that of the RTK correction signal.
[0006] Figure 1 is a schematic diagram of a conventional VRS method NRTK correction signal provision system.
[0007] As illustrated in Figure 1, to use the VRS-based NRTK correction signal, the user's GNSS receiver must first provide the RTK server with its approximate location information, determined solely using GNSS satellite signals. The RTK server then selects three or more of the closest reference stations based on the provided location information and utilizes the information from these reference stations to calculate and provide the RTK correction signal most appropriate for the user's location. This process of providing the user's approximate location information and calculating and providing the RTK correction signal appropriate for the location is repeated in real time, assisting the user in determining their precise location.
[0008] This method relies entirely on the RTK server to calculate NRTK correction signals and requires continuous transmission of user location information to the RTK server, making it only feasible in a two-way communication environment. Furthermore, because the RTK server must continuously calculate correction signals appropriate for user locations, the computational burden on the RTK server inevitably increases significantly as the number of users increases. Consequently, as the number of users increases, the RTK server capacity must be increased.
[0009] In the past, most agricultural machinery was either a walk-behind type that the worker operated while walking alongside the agricultural machinery, or a ride-on type that the worker operated by riding in a driver's seat on the agricultural machinery.
[0010] However, recently, with the development of autonomous driving technology and wireless communication technology, autonomous driving agricultural machinery that uses GPS data and other sensing data by attaching autonomous driving devices to agricultural machinery and performing autonomous driving operations is increasing.
[0011] At this point in time, when the number of autonomous agricultural machines is certain to increase in the future, if a GPS system that provides NRTK correction signals using the VRS method is applied to each autonomous agricultural machine, it is highly likely that the aforementioned problems will occur more frequently.
[0012] Embodiments of the present application seek to provide a system and method for preventing degradation of quality of two-way communication between an RTK server and a GNSS communication device installed in agricultural machinery by maintaining a connection with multiple servers.
[0013] A management device for managing a plurality of RTK servers according to one aspect of the present application is provided, wherein each of the plurality of RTK servers is connected to enable communication with one or more RTK rovers and a plurality of reference stations, and the RTK rovers are installed in agricultural machinery.
[0014] The above management device includes a database for storing server-related information for the plurality of RTK servers, a communication module for communicating with the RTK rover and reference station, and a control unit including a processor.
[0015] The control unit may be configured to perform commands including: receiving a GNSS position of the RTK rover from the RTK rover; receiving a navigation guidance route from the RTK rover; searching for an RTK server located within a predetermined distance from the navigation guidance route based on a pre-stored geographic location of an RTK server and a navigation guidance route; determining a priority of an RTK server for the RTK rover and generating a server priority list recording the priority; and transmitting the server priority list to the RTK rover via the communication module.
[0016] In one embodiment, the step of generating a server priority list recording priorities of RTK servers for the RTK rover may include the steps of: calculating, for each discovered RTK server, a connection priority score of an individual RTK server for the RTK rover; prioritizing the discovered RTK server according to the calculated connection priority score of the individual RTK server; and generating a server priority list according to the priorities of the discovered RTK servers.
[0017] In one embodiment, the step of generating a server priority list recording priorities of RTK servers for the RTK rover may include: a step of calculating a connection priority score of individual RTK servers for the RTK rover at a plurality of path locations that are sequentially located at unit intervals on the driving guidance path of the RTK rover; a step of prioritizing the searched RTK servers according to the connection priority scores of the individual RTK servers calculated for each path location; and a step of generating a priority list for the RTK rover for each path location.
[0018] In one embodiment, for each of the searched RTK servers, the step of calculating a connection priority score of an individual RTK server for the RTK rover may include the steps of: obtaining a measurement result for a communication latency between the RTK rover and the corresponding RTK server; obtaining a measurement result for a communication bandwidth between the RTK rover and the corresponding RTK server; measuring a distance interval between the corresponding RTK server and the RTK rover based on a geographic location of the corresponding RTK server and a geographic location of the RTK rover stored in the database; applying a weight to each of the communication latency, communication bandwidth, and distance interval of the corresponding RTK; and calculating a connection priority score of an individual RTK server for the RTK rover based on the measurement result of the communication latency and communication bandwidth of the corresponding RTK and the measurement result of the distance interval to which the weights have been applied.
[0019] In one embodiment, the step of applying weights to the communication delay time, the communication bandwidth, and the distance interval of the corresponding RTK may include a step of adjusting preset initial weight values for the communication delay time and the communication bandwidth of the corresponding RTK based on geographical information about a geographical area between the geographical location of the corresponding RTK server and the geographical location of the RTK rover. The step of adjusting the preset initial weight values for the communication delay time and the communication bandwidth of the corresponding RTK includes, when there is a mountain having a height greater than a threshold height or a river having a width greater than a threshold width in the geographical area, adjusting the preset weights for the communication delay time and the communication bandwidth of the corresponding RTK to weight values higher than the initial weight values based on geographical information related to the mountain and geographical information related to the river, wherein the geographical information related to the mountain includes a length of a portion of the mountain parallel to the distance interval direction and a height of the mountain, and the geographical information related to the river includes a width of a portion of the river parallel to the distance interval direction.
[0020] An RTK rover connected to an RTK server managed by a management device according to the above-described embodiments and capable of communicating with the RTK server may include a GNSS receiver for receiving a GNSS position from a GNSS satellite; a communication unit for communicating with at least one RTK server and the management device; a memory for storing a priority list received through the communication unit; and a processor configured to perform a connection operation so that the GNSS receiver can communicate with the RTK server according to the priority list.
[0021] In one embodiment, the processor comprises: determining a first RTK server according to a priority order of RTK servers in the priority list at the location of the RTK rover; establishing a foreground connection between the first RTK server and the RTK rover and communicating with the first RTK server to receive correction information for the RTK rover; determining a second RTK server according to a priority order in the priority list at the location of the RTK rover; establishing a background connection between the second RTK server and the RTK rover and monitoring a background connection state between the second RTK server and the RTK rover to maintain a background connection with the second RTK server while the foreground connection with the first RTK server is maintained; monitoring a foreground connection state between the first RTK server and the RTK rover and determining whether the foreground connection state is normal based on a monitoring result; releasing the foreground connection between the first RTK server and the RTK rover when the foreground connection state is determined to be abnormal based on the monitoring result; The command may be configured to perform a step of determining the second RTK server, which is maintaining the background connection, as an RTK server for a new foreground connection, and activating the background connection with the second RTK server, which is inactive, as a foreground connection to receive correction information for the RTK rover by communicating with the second RTK server.
[0022] In one embodiment, the processor in the RTK rover may be configured to further perform instructions including: when the foreground connection state is determined to be abnormal based on a monitoring result, additionally determining a third RTK server as a new RTK server for the background connection based on a priority of each server in the priority list at the location of the RTK rover at the time the background connection is activated; and establishing a background connection between the third RTK server and the RTK rover, and maintaining the background connection while the foreground connection with the second RTK server is maintained.
[0023] In one embodiment, the step of monitoring a background connection status between the second RTK server and the RTK rover to maintain a background connection with the second RTK server comprises: obtaining processing status information of the second RTK server while the background connection is maintained; calculating a processing quality score of a background-connected RTK server based on the processing status information of the second RTK server; releasing the background connection with the second RTK server when the processing quality score is lower than a preset threshold quality score; obtaining processing status information of a third RTK server having a next priority to the second RTK server; calculating a processing quality score of the third RTK server based on the processing status information of the third RTK server; and checking whether the processing quality score of the third RTK server is higher than or equal to the threshold quality score. And, if the processing quality score of the third RTK server is equal to or higher than the threshold quality score, the step of releasing the existing background connection between the second RTK server and the RTK rover and newly establishing a background connection between the third RTK server and the RTK rover may be included.
[0024] In one embodiment, the step of calculating a processing quality score of the background-connected RTK server may include: a step of obtaining a server load of the background-connected RTK server, a communication throughput for the RTK rover, other concurrently connected RTK rovers, and a communication throughput of the background-connected RTK server for the other RTK rovers, which are included in the processing status information; and a step of calculating a processing quality score of the background-connected RTK server based on the server load of the background-connected RTK server, the communication throughput for the RTK rover, the number of other concurrently connected RTK rovers, and the communication throughput of the background-connected RTK server for the other RTK rovers.
[0025] In one embodiment, the processor may determine the foreground connection state to be non-normal if the RTK-FIX state is released or if correction data is not received from a foreground connected RTK server.
[0026] An NRTK correction system according to one aspect of the present application maintains connections with multiple servers and, when a quality degradation occurs in two-way communication between a foreground server providing RTK correction signals and a GNSS communication device installed in agricultural machinery, quickly replaces a background server with a foreground server, thereby preventing any deterioration in the quality of two-way communication between the foreground server and the GNSS communication device installed in agricultural machinery. In addition, even when a large number of GNSS receivers are present, the system can quickly recover from an instability caused by a performance degradation of a network RTK correction server and improve the quality of provision of RTK correction signals to individual GNSS receivers.
[0027] The effects of the present application are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.
[0028] To more clearly explain the technical solutions of the present application or prior art embodiments, the drawings required for the description of the embodiments are briefly introduced below. It should be understood that the drawings below are intended only to illustrate the embodiments of this specification and are not intended to be limiting. Furthermore, for clarity of explanation, some elements may be depicted with various modifications, such as exaggeration or omission, in the drawings below.
[0029] Figure 1 is a schematic diagram of a conventional VRS method NRTK correction signal provision system.
[0030] FIG. 2 is a schematic diagram of a VRS-type NRTK correction signal providing system for preventing quality degradation of two-way communication between an RTK server and a GNSS communication device indicating the position of agricultural machinery, according to one aspect of the present application.
[0031] FIG. 3 is a configuration diagram of an RTK rover installed on agricultural machinery according to various embodiments of the present application.
[0032] FIG. 4 is a configuration diagram of a management device according to various embodiments of the present application.
[0033] FIG. 5 is a flowchart of a process for setting priorities of an RTK server according to various embodiments of the present application.
[0034] FIG. 6 illustrates a server priority list according to various embodiments of the present application.
[0035] FIG. 7 is a flowchart of a method for providing an NRTK correction signal using a VRS method to prevent quality degradation of two-way communication between an RTK server and a GNSS communication device indicating the position of agricultural machinery, according to another aspect of the present application.
[0036] The terminology used herein is for the purpose of describing specific embodiments only and is not intended to limit the present application. As used herein, the singular forms "a," "an," and "the" include plural forms as well, unless the context clearly dictates otherwise. The term "comprising," as used herein, specifies a particular feature, region, integer, step, operation, element, and / or component, but does not exclude the presence or addition of other features, regions, integers, steps, operations, elements, and / or components.
[0037] Although not otherwise defined, all terms, including technical and scientific terms, used herein have the same meaning as commonly understood by a person of ordinary skill in the technical field to which this application pertains. Terms defined in commonly used dictionaries are further interpreted to have meanings consistent with the relevant technical literature and the present disclosure, and are not to be construed in an ideal or overly formal sense unless otherwise defined.
[0038] In this specification, a terminal may refer to a mobile terminal (MT), a mobile station (MS), an advanced mobile station (AMS), a high reliability mobile station (HR-MS), a subscriber station (SS), a portable subscriber station (PSS), an access terminal (AT), a user equipment (UE), etc., and may include all or part of the functions of an MT, an MS, an AMS, an HR-MS, an SS, a PSS, an AT, a UE, etc.
[0039] In addition, the base station (BS) (or roadside equipment) may refer to an advanced base station (ABS), a high reliability base station (HR-BS), a node B, an evolved node B (eNodeB), an access point (AP), a radio access station (RAS), a base transceiver station (BTS), a mobile multihop relay (MMR)-BS, a relay station (RS) that performs the role of a base station, a relay node (RN) that performs the role of a base station, an advanced relay station (ARS) that performs the role of a base station, a high reliability relay station (HR-RS) that performs the role of a base station, a small base station (femto BS, home node B (HNB), home eNodeB (HeNB), a pico BS, a metro BS, a micro BS, etc.), etc. It may include all or part of the functions of ABS, NodeB, eNodeB, AP, RAS, BTS, MMR-BS, RS, RN, ARS, HR-RS, small base station, etc.
[0040] In this specification, a transceiver may refer to a terminal, a mobile terminal (MT), a mobile station (MS), an advanced mobile station (AMS), a high reliability mobile station (HR-MS), a subscriber station (SS), a portable subscriber station (PSS), an access terminal (AT), a user equipment (UE), etc., and may include all or part of the functions of a terminal, an MT, an AMS, an HR-MS, an SS, a PSS, an AT, a UE, etc.
[0041] In addition, the transceiver may refer to a base station (BS), an advanced base station (ABS), a high reliability base station (HR-BS), a node B, an evolved node B (eNodeB), an access point (AP), a radio access station (RAS), a base transceiver station (BTS), a mobile multihop relay (MMR)-BS, a relay station (RS) that functions as a base station, a high reliability relay station (HR-RS) that functions as a base station, etc., and may include all or part of the functions of an ABS, a node B, an eNodeB, an AP, a RAS, a BTS, an MMR-BS, an RS, an HR-RS, etc.
[0042] Hereinafter, embodiments of the present application will be described in detail with reference to the drawings.
[0043]
[0044] FIG. 2 is a schematic diagram of a VRS-type NRTK correction signal providing system for preventing quality degradation of two-way communication between an RTK server and a GNSS communication device indicating the position of agricultural machinery, according to one aspect of the present application.
[0045] Referring to FIG. 2, a VRS-based NRTK correction signal provision system (hereinafter, NRTK correction signal provision system, 1) for preventing quality degradation of two-way communication between an RTK server and a GNSS communication device indicating the location of agricultural machinery includes a plurality of RTK rovers (100), a plurality of reference stations 200, a plurality of RTK servers (300), and a management device (500).
[0046] The NRTK correction signal providing system (1) according to the embodiments may be entirely hardware, entirely software, or may have aspects that are partially hardware and partially software. For example, a device or system may collectively refer to hardware equipped with data processing capabilities and operating software for driving the same. In this specification, terms such as "unit," "module," "device," or "system" are intended to refer to a combination of hardware and software driven by the hardware. For example, hardware may be a data processing device including a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), or another processor. In addition, software may refer to a running process, an object, an executable, a thread of execution, a program, etc.
[0047]
[0048] The RTK rover (100) is a mobile station (rover) that moves with a GNSS receiver (101). The RTK rover (100) can be installed in a mobile application device such as a mobile device, mobility, vehicle, or mobility vehicle.
[0049] In various embodiments of the present application, the RTK rover (100) may be installed on agricultural machinery (10). In the present specification, agricultural machinery is intended to perform various tasks necessary for farming, and is capable of performing various types of tasks such as plowing, rotary, pesticide spraying, and rice transplanting. It is divided into a walk-behind work machine that a worker operates while walking with the agricultural machinery, and a ride-on work machine that a worker operates by riding in a driver's seat provided on the agricultural machinery.
[0050] Various embodiments of the present invention disclose devices applicable to agricultural machinery classified as passenger work equipment, such as tractors. In some embodiments, the agricultural machinery 10 may be agricultural machinery capable of fully autonomous or partially autonomous (also referred to as semi-autonomous) operation.
[0051] The above agricultural machinery may be coupled with a work device to drive on agricultural land such as rice paddies or fields. Driving the above agricultural machinery involves performing such agricultural work.
[0052] The user of the above agricultural machinery can directly perform manual driving control. The user can directly control the forward or reverse movement of the agricultural machinery by operating the shuttle lever of the agricultural machinery, and can control the path of the agricultural machinery by operating the steering wheel.
[0053] In addition, a drive control device for controlling forward or reverse driving for autonomous driving of agricultural machinery may be installed on the agricultural machinery. In this case, the agricultural machinery moves according to a set path and can move forward or backward according to the settings made by the user of the agricultural machinery. Autonomous driving can be controlled and set through information exchange between the drive control device installed on the agricultural machinery and a user device. The user can generate autonomous driving-related setting information and transmit it to the drive control device using a user device that is a terminal capable of information calculation and information transmission and reception, such as a smartphone or computer. The drive control device includes a transceiver and a processor, and is electrically connected to the drive unit of the agricultural machinery to control the drive unit. The drive control device can receive autonomous driving-related setting information from the user device and control the forward or reverse movement of the drive unit of the agricultural machinery according to the autonomous driving-related setting information.
[0054] A steering wheel control device for controlling a steering wheel for autonomous driving of agricultural machinery may be additionally installed on the agricultural machinery. In this case, the steering wheel control device may be configured to control the steering wheel so that the agricultural machinery can move along a set path based on autonomous driving-related setting information received from a user device. The steering wheel control device may be mechanically connected to the steering wheel and configured to rotate the steering wheel along the set path. The steering wheel control device may include a transmitter and receiver to receive autonomous driving-related setting information from the user device. The steering wheel control device may include a processor to control the rotation of the steering wheel based on the autonomous driving-related setting information.
[0055] FIG. 3 is a configuration diagram of an RTK rover installed on agricultural machinery according to various embodiments of the present application.
[0056] Referring to FIG. 3, the RTK rover (100) includes a GNSS receiver (101), a communication unit (110), a memory (120), and a processor (130).
[0057] A GNSS receiver (101) is a device that determines a location by receiving signals from satellites orbiting the Earth. In various embodiments of the present application, the GNSS receiver (101) may be a GPS receiver. The GNSS receiver (101) is configured to determine the GPS (global positioning system) location of an agricultural machine (100). The GNSS receiver (101) receives signals transmitted from three or more GPS satellites to determine the locations of the satellites and the GNSS receiver (101). By measuring the time difference between the signal transmitted from the GPS satellite and the signal received by the GNSS receiver (101), the distance between the GPS satellite and the GNSS receiver (101) can be obtained. At this time, the signal transmitted from the GPS satellite contains information about the location of the GPS satellite. Once the distance to at least three GPS satellites and the location of each GPS satellite are known, the location of the GPS sensor can be calculated using a method such as trilateration. The GPS location of the agricultural machine (100) can be determined using the GNSS receiver (101).
[0058] The above GNSS receiver (101) may be a high-precision GNSS receiver for an RTK rover. The RTK rover (100) may transmit or receive data to or from a base station 200 or an RTK server (300) through the GNSS receiver (101).
[0059] The above communication unit (110) is a component for the RTK rover (100) to transmit or receive data with the management device (500).
[0060] The communication unit (110) is connected to the processor (130) to transmit and receive data, and can transmit and receive data with external devices such as an external device (e.g., a management device (500)). All or part of the communication unit (110) may be referred to as a transmitter, a receiver, a transceiver, a communication unit, a communication model, or a communication circuit. The communication unit (110) may support at least one of various wireless communication standards such as the Institute of Electrical and Electronics Engineers (IEEE) 802.xx system, IEEE Wi-Fi system, 3GPP (3rd generation partnership project) system, 3GPP LTE (long term evolution) system, 3GPP 5GNR (new radio) system, 3GPP2 system, and Bluetooth, which are wired and wireless connection systems.
[0061] The memory (120) is connected to the processor (130) and can store data such as basic programs for the operation of the processor (130), application programs, setting information, and information generated by the processor's operations. The memory (120) may be composed of volatile memory, non-volatile memory, or a combination of volatile memory and non-volatile memory. For example, the memory may include a hard disk drive (HDD), a solid state drive (SSD), a compact disc (CD), random access memory (RAM), read only memory (ROM), and various other storage devices that store data permanently, semi-permanently, or temporarily.
[0062] And, the memory (120) can provide stored data according to a request of the processor (130). In various embodiments of the present application, the memory (120) can store a dedicated application for performing the operation of the RTK rover (100) in the NRTK correction signal providing system (1). For example, the memory (120) can store a command for performing the operation of the RTK rover (100) illustrated in FIG. 7 below.
[0063] The processor (130) may be configured to implement the procedures and / or methods proposed in the present invention. The processor (130) may perform pre-stored computational processing operations to generate or create information, and determine at least one executable operation to be performed subsequently based on the determined or generated information. Furthermore, the processor (130) may control components of the RTK rover (100) to perform the determined operation. To this end, the processor (130) may request, retrieve, receive, or utilize data from the memory (120), and control components of the RTK rover (100) to execute an operation that is predicted or determined to be desirable among the at least one executable operation.
[0064] Such a processor (130) may be implemented as at least one processor (130). The processor (130) may include a central processing unit (CPU) or a neuromorphic processor designed to be advantageous for the operation of an artificial neural network by imitating the neurons and synapses of the human brain.
[0065] In various embodiments of the present application, the processor (130) may be configured to perform operations according to a dedicated application for performing operations of the RTK rover (100) in the NRTK correction signal providing system (1). For example, the processor (130) may be configured to perform steps performed by the RTK rover (100) illustrated in FIG. 7 below.
[0066] In one example, the RTK rover (100) can receive GPS signals from GPS satellites by means of a GNSS receiver 110. Then, based on the received GPS information, the current location is generated in the form of a GNGGA message of the NMEA-0183 message standard. That is, the terminal positioning information is generated in the form of NMEA0183-GNGGA and transmitted to the RTK server (300). Then, by receiving correction information (RTCM v3.2) corresponding to the terminal positioning information from the RTK server (300) and performing position correction, a more precise location value can be confirmed.
[0067] The reference station (200) can calculate the positional error of data received from a satellite and generate correction data. This is used to reduce the positioning error of the RTK rover (100). Multiple reference stations (200) are placed in stationary locations and exchange data related to phase errors with the RTK server (300) in real time.
[0068] The RTK server (300) can be implemented as one or more computer servers that are communicatively coupled with the reference stations 200 and the RTK rover (100) via a data communication network.
[0069] In certain embodiments, the server (300) may be a unitary server or a distributed server spanning multiple computers or multiple data centers. In some embodiments, the server (300) refers to a computer system and computer software (network server program) that is connected to a sub-device capable of communicating with other network servers via a computer network, such as a private intranet or the Internet, and that receives a request to perform a task, performs the task, and provides the result of the task. However, the server (300) should be understood as a broad concept that includes, in addition to the network server program, a series of applications running on the server and, in some cases, various databases built within it. The server (300) may be of various types, such as, without limitation, a web server, a news server, a mail server, a message server, an advertisement server, a file server, an application server, an exchange server, a database server, a proxy server, another server suitable for performing the functions or processes described herein, or any combination thereof. In certain embodiments, each server (300) may include hardware, software, or embedded logic elements, or a combination of two or more such elements, to perform the appropriate functions implemented or supported by the server (300).
[0070] The data communications network may include any of a variety of public and / or private networks, including the Internet, one or more mobile carrier networks, and / or other such wide area networks (WANs).
[0071] The above RTK server (300) is a correction server that calculates correction information for correcting the GPS information of the RTK rover 10.
[0072] Specifically, the RTK server (300) receives information related to the GPS phase error of the corresponding area in real time from multiple reference stations (200). The data transmitted from the reference station (200) is carrier wave reception data. The RTK server (300) performs precise pseudo-range correction while performing measurements based on the carrier wave. In particular, when two reference stations (200) are located close to each other, precise data that cancels out the common errors of the two can be acquired.
[0073] The RTK server (300) can receive terminal positioning information from the RTK rover (100) and confirm the location of the RTK rover (100). As described above, the RTK rover (100) first provides the RTK server (300) with terminal positioning information indicating the approximate location of the RTK rover (100) determined only using GNSS satellite signals by its GNSS receiver 110. In some embodiments, the RTK server (300) receives terminal positioning information in the form of NMEA0183-GNGGA from the RTK rover (100).
[0074] Then, the RTK server (300) uses the terminal positioning information to confirm the location of the RTK rover (100) and generates correction information suitable for the location. This is achieved by extracting correction information (RTCM v3.2) suitable for the location of the terminal positioning information, i.e., corresponding thereto, from among correction information of a wide area produced through the reference station (200). In some embodiments, the RTK server (300) selects three or more reference stations 200 closest to the RTK rover (100) based on the terminal positioning information, and calculates an RTK correction signal most suitable for the user location, i.e., the location of the RTK rover (100), by utilizing the information of the selected reference stations. In some embodiments, the RTK server (300) can extract correction information suitable for the location of the terminal positioning information, i.e., corresponding thereto, from among correction information of a wide area produced through the reference station 200 based on the confirmed location of the RTK rover (100), as the most suitable RTK correction signal. The above correction information may be referred to as reference station correction data.
[0075] The above RTK server (300) provides the RTK correction signal to the RTK rover (100) as correction information for the RTK rover (100).
[0076] In some embodiments, the RTK server (300) may include reference station-related information and / or observation data information. The reference station-related information is information related to the reference station 200, and may include reference station parameters, reference station antenna information, etc. The observation data information is information describing data measured by the reference station 120, and may include reference station carrier data, reference station code data, etc.
[0077] The RTK rover (100) receives correction information and adds it to the current position value to determine the final position. This allows for real-time position coordinate values with centimeter (cm) precision. Naturally, the farther the RTK rover (100) is from the reference station (200), the lower the position accuracy.
[0078] Meanwhile, correction information for a specific reference station region corresponding to terminal positioning information can be produced from at least one of the reference station (200) and the RTK server (300).
[0079]
[0080] The management device (500) is a device that manages the NRTK correction signal provision system (1) to stably provide RTK service even when an unstable connection occurs due to a temporary load on the server or an influence from the network environment.
[0081] The management device (500) may be implemented as a computing device including a processor. In various embodiments of the present application, the management device (500) may be implemented in the form of a server. For example, the management device (500) may be implemented as a large-capacity server-class device. However, the present invention is not necessarily limited thereto.
[0082] FIG. 4 is a configuration diagram of a management device according to various embodiments of the present application.
[0083] Referring to FIG. 4, the management device (500) includes a database (DB, 501), a communication module 510, a memory (520), and a processor (530).
[0084] The database (501) is a data storage that stores reference station-related information and / or server-related information.
[0085] Server-related information is information describing the RTK server (300), and includes, for example, network connection information of the server used to connect the RTK server (300) and the management device (500) to enable communication or to connect the RTK rover (100) and the RTK server (300) to enable communication, and location information of the server indicating the geographical location of the RTK server (300).
[0086] Additionally, in some embodiments, the server-related information may further include reference station-related information for one or more reference stations connectable to the RTK server (300).
[0087] The above database (501) can store identification information for each of a plurality of RTK servers (300) as well as RTK-related information for the corresponding RTK server (300). The identification information is information for identifying a server within the system.
[0088] The above reference station-related information is information describing the reference station 200, and includes, for example, network connection information of the reference station 200 used to connect the reference station 200 and the RTK server (300) to enable communication with each other, and location information of the reference station 200 indicating the geographical location where the reference station 200 is installed.
[0089] The above network connection information may be a network address for connecting to the corresponding device (200, 300). The above network connection information depends on the data communication network.
[0090] In some embodiments, the database (501) is integrated within the management device (500) or implemented as an external DB server and connected to the management device (500). In some embodiments, the information stored in the database (501) may be structured according to a specific data structure. The database (501) may be a relational, columnar, relational, or other suitable database. Although this specification describes or illustrates a particular type of database, this specification contemplates any suitable type of database. In some embodiments, the management device (500) may provide an interface that allows for managing, retrieving, modifying, adding, or deleting information stored in the database (501) via an interface device (e.g., an input / output device) of the management device (500).
[0091] The above communication module 510 is a component for the management device (500) to transmit or receive data with the RTK rover (100) or RTK server (300). Since the communication module (510) is similar to the communication unit (110), a detailed description thereof will be omitted.
[0092] In FIG. 5, the memory (520) and the processor (530) are similar to the memory (120) and the processor (130) in FIG. 3, so the differences will be mainly described.
[0093] In various embodiments of the present application, the memory (520) may store a dedicated application for performing the operation of the management device (500) in the NRTK correction signal provision system (1). For example, the memory (520) may store a command for performing the operation of the management device (500) illustrated in FIG. 5 below.
[0094] The processor (530) is a component that performs the overall operations performed by the management device (500). Therefore, the operations of the processor (530) can be used interchangeably with the operations of the management device (500).
[0095] In various embodiments of the present application, the processor (130) may be configured to perform operations according to a dedicated application for performing operations of the management device (500) in the NRTK correction signal provision system (1). For example, the processor (530) may be configured to perform steps performed by the management device (500) illustrated in FIG. 5 below.
[0096] The above management device (500) can perform an operation of managing the NRTK correction signal provision system (1) to stably provide RTK service (e.g., by the processor (530)).
[0097] In various embodiments of the present application, the management device (500) may set the priority of each of the plurality of RTK servers (300) managed by the management device (500) based on the RTK rover (100) in order to stably provide RTK service to the RTK rover (100). In addition, the management device (500) may provide the set priority information to the RTK rover (100).
[0098] The operation of this management device (500) is described in more detail with reference to FIG. 5 below.
[0099] FIG. 5 is a flowchart of a process for setting priorities of an RTK server according to various embodiments of the present application.
[0100] Referring to FIG. 5, the process of setting the priority of the RTK server performed by the management device (500) may include a step of receiving the GNSS position of the RTK rover from the RTK rover (S510); a step of receiving driving guidance route information describing the driving guidance route from the RTK rover (100) (S520); a step of searching for an RTK server located within a predetermined distance based on the driving guidance route based on the pre-stored geographical locations of a plurality of RTK servers (300) managed by the management device (500) and the received driving guidance route (S530); a step of setting the priority of the searched RTK server (300) to create a server priority list (S540); and a step of transmitting the server priority list to the RTK rover (100) (S550).
[0101] The above server priority list is a list that records the priorities of the RTK server (300) for the RTK rover (100).
[0102] The above management device (500) can obtain the GNSS location of the RTK rover (100) in real time (S510). The GNSS location may be the GPS coordinates of the RTK rover (100). The GNSS location may be the terminal positioning information, but is not limited thereto. The GNSS location may not be limited to the NMEA0183-GNGGA format.
[0103] In the above step (S520), the management device (500) obtains the driving guidance path of the RTK rover (100). The driving guidance path is a planned path for working in the work area.
[0104] In the above step (S540), the predetermined distance may be set as a distance at which the RTK server (300) and the RTK rover (100) on the driving guidance path can communicate. In some embodiments, the predetermined distance may be a theoretical distance.
[0105] In various embodiments of the present application, the step (S540) of generating a priority list by setting the priority of the discovered RTK server (300) may include the step (S541) of calculating a connection priority score of each individual RTK server (300) for the RTK rover (100) for each discovered RTK server (300); the step (S543) of ranking the priorities of the discovered RTK servers (300) according to the calculated connection priority score of each individual RTK server (300); and the step (S545) of generating a server priority list according to the priorities of the discovered RTK servers (300).
[0106] The above connection priority score is a numerical representation of the performance of an RTK server (300) that can stably provide correction information to the RTK rover (100) among the RTK servers (300) around the driving guidance path of the RTK rover (100). A higher connection priority score of the RTK server (300) indicates that it can provide correction information to the RTK rover (100) more stably, and conversely, a lower connection priority score of the RTK server (300) indicates that it can provide correction information to the RTK rover (100) more stably. According to embodiments, the relationship between the score value and the provision performance of the RTK server (300) may be implemented as the opposite relationship of the above-described description.
[0107] The above management device (500) may be configured to calculate a connection priority score of an individual RTK server for the RTK rover based on the measurement results of the communication delay time and communication bandwidth of the RTK and the measurement results of the distance interval.
[0108] In some embodiments, the step (S541) of calculating a connection priority score of an individual RTK server (300) for the RTK rover (100) may include the steps of: obtaining a measurement result for a communication latency between the RTK rover and the corresponding RTK server (S5411); obtaining a measurement result for a communication bandwidth between the RTK rover and the corresponding RTK server (S5412); measuring a distance interval between the corresponding RTK server and the RTK rover based on the geographical location of the corresponding RTK server and the geographical location of the RTK rover stored in the database (S5413); applying a weight to each of the communication latency, communication bandwidth, and distance interval of the corresponding RTK (S5414); and calculating a connection priority score of an individual RTK server for the RTK rover based on the measurement result of the communication latency and communication bandwidth of the corresponding RTK and the measurement result of the distance interval to which the weights have been applied (S5415).
[0109] The above management device (500) can measure the delay time and bandwidth between the external server (300) and the RTK rover (100) using a network test tool pre-stored in the RTK rover (100) and / or the RTK server (300). The network test tool includes a first test tool for measuring the delay time and a second test tool for measuring the bandwidth. The first test tool may be, but is not limited to, a ping test tool that sends an echo request message and measures the round trip time it takes for a response to return. The second test tool may be, but is not limited to, a network speed test tool such as, for example, Ookla's Speedtest.
[0110] In one example, the management device (500) may transmit a request including a measurement instruction to measure the network connection information of each RTK server (300) discovered in the step (S510), the delay time with respect to each individual server (300), and the bandwidth to the RTK rover (100). Upon receiving the request, the RTK rover (100) may measure the delay time and bandwidth with respect to each individual server (300) using a pre-stored network test tool, and transmit the measurement results to the management device (500) (S5411, S5412).
[0111] In addition, the management device (500) can measure the distance interval between the fixed location where the individual RTK server (300) is installed and the RTK rover (100). The location of the RTK rover (100) used to calculate the distance interval in the step (S5413) is the value obtained in the step (S510).
[0112] The above management device (500) can preset and store weights for each connection element for calculating a connection priority score. The initial weights for the connection elements can be set to the same value or can be set according to input values from the system operator.
[0113] In some embodiments, the management device (500) may be further configured to adjust the initial weight values of the connection elements based on the geographical information between the RTK rover (100) and the RTK server (300) before applying the set weight values, and to apply the adjusted weight values to the values of steps (S5411 to S5413).
[0114] Specifically, the step (S5414) may include a step of adjusting the preset initial weight values for the communication delay time and communication bandwidth of the corresponding RTK based on geographical information about the geographical area between the geographical location of the corresponding RTK server and the geographical location of the RTK rover; and a step of applying the adjusted weight values for the communication delay time and communication bandwidth of the corresponding RTK.
[0115] The above management device (500) can adjust the weights considering the possibility of attenuation of the RTK correction signal between the server (300) and the RTK rover (100). As the possibility of attenuation of the RTK correction signal increases, the importance of considering the communication delay time and / or communication bandwidth increases. Consequently, as the possibility of attenuation of the RTK correction signal between the server (300) and the RTK rover (100) increases, the weight values of the communication delay time and / or communication bandwidth can be adjusted to increase compared to the initial weight values.
[0116] Considering the working environment of the agricultural machinery in which the above RTK rover (100) is installed, mountains or rivers around the agricultural machinery may affect the attenuation of the RTK correction signal.
[0117] In some embodiments, the step of adjusting the preset initial weight value for the communication delay time and communication bandwidth of the RTK may include adjusting the preset weight value for the communication delay time and communication bandwidth of the RTK to a weight value higher than the initial weight value based on geographical information related to the mountain and / or geographical information related to the river, if there is a mountain having a height greater than a threshold height or a river having a width greater than a threshold width in the geographical area.
[0118] The above initial weight value may be a preset value considering an environment in which there are no mountains or rivers of a size that would attenuate a communication signal in the geographical area between the server (300) and the RTK rover (100).
[0119] Natural obstacles, such as tall mountains or wide rivers, can block or attenuate the propagation path of wireless signals. This can weaken signal strength, ultimately reducing the stability and quality of the connection. Specifically, weakened signal strength increases the likelihood of data transmission failures, which can lead to retransmissions. These retransmissions can increase communication latency. Weak signal strength can also reduce data transmission rates, which can impact overall network bandwidth. This can make efficient use of bandwidth difficult. Taller mountains or wider rivers can further attenuate wireless signals. These geographical obstacles can affect the propagation distance and path of RTK correction signals, further degrading communication quality.
[0120] Geographic information related to the mountain may include the length of a portion of the mountain parallel to the distance interval direction, and the height of the mountain. The height of the mountain may be the height between the summit and / or ridge of the mountain and the ground. Additionally, in some embodiments, the information related to the mountain may include the length of a portion of the mountain above a critical height parallel to the distance interval direction, the height of a portion of the mountain above the critical height, an area, and the like.
[0121] The above threshold height value refers to the height of a mountain that attenuates a communication signal in a geographical area between the server (300) and the RTK rover (100). For example, if the threshold height is 100 m and the highest height of the mountain is 200 m, the length, area, height, etc. of the portion corresponding to 100 m to 200 m can be used to adjust the weight value. The length refers to the cross-sectional length of the mountain parallel to the direction of the shortest distance between the server (300) and the RTK rover (100).
[0122] As the value corresponding to the geographical information related to the above mountain increases, the weight values for delay time and bandwidth can be adjusted to a larger value compared to the initial value.
[0123] Geographic information related to the river includes the elevation and / or width of the river. In some embodiments, the information related to the river may include the elevation of a portion of the river having an elevation greater than or equal to the threshold elevation and / or the width of a portion of the river parallel to the distance interval direction. The management device (500) may adjust a weighting value considering the elevation of the river if the elevation of the river is greater than or equal to the threshold elevation.
[0124] The length of the river width represents the cross-sectional length of the river parallel to the shortest distance between the server (300) and the RTK rover (100).
[0125] As the value corresponding to the geographic information related to the above river increases, the weight values for delay time and bandwidth can be adjusted to larger values compared to the initial values.
[0126] The management device (500) may calculate a connection priority score for each server by applying the adjusted weight value to each connection element. In some embodiments, the management device (500) may calculate a connection priority score for each server from the result of applying the weights through weight summation. In some embodiments, the management device (500) may convert the result of the weight summation into a preset scale range. For example, the management device (500) may scale the result of the weight summation into a value between 0 and 100 points through a preset conversion formula.
[0127] The above management device (500) can assign a higher priority value to an RTK server (300) whose priority connection score is calculated as a relatively high value. For example, the management device (500) can assign the highest priority (e.g., 1st priority) to the server (300) with the highest priority connection score among the searched servers, and can assign the lowest priority to the server (300) with the lowest priority connection score.
[0128] The above management device (500) can generate a server priority list recording the priorities of the individual RTK servers (300) searched based on the server-specific priorities determined in the above step (S543) (S545).
[0129] FIG. 6 illustrates a server priority list according to various embodiments of the present application.
[0130] Referring to FIG. 6, the server priority list can be expressed in table form.
[0131] In some embodiments, the management device (500) may be configured to generate a server priority list considering that the RTK rover (100) continues to move along the navigation path. In this case, the step (S541) may include a step (S541a) of calculating a connection priority score of an individual RTK server (300) for the RTK rover (100) at a plurality of path locations that are sequentially positioned at unit intervals on the navigation path of the RTK rover (100); a step (S543a) of prioritizing the searched RTK server (300) according to the connection priority score of the individual RTK server (300) calculated for each path location; and a step (S545a) of generating a priority list for the RTK rover (100) for each path location.
[0132] The above steps (S541a to S545a) are similar to the steps (S541 to S545) of FIG. 5, so the differences will be mainly described.
[0133] The above multiple route locations may include a starting point, an ending point, and at least one other route location between the starting point and the ending point of the driving guidance route.
[0134] The above unit interval may be based on a unit system describing the driving guidance path. For example, if the driving guidance path is 100 km, the unit interval may be 1 km. Then, the management device (500) may perform the operations of steps (S541 to S545) of FIG. 3 for the RTK rover (100) located at 0 km. The management device (500) may perform the operations of steps (S541 to S545) of FIG. 3 for the RTK rover (100) located at 1 km. Subsequently, the management device (500) may continuously and repeatedly perform the operations of steps (S541 to S545) of FIG. 3 for the RTK rover (100) located at each path position from 2 km to 99 km. That is, the management device (500) can repeat the operations of steps (S541 to S545) until the RTK rover (100) reaches the last route location excluding the destination among the plurality of route locations.
[0135] The above management device (500) can transmit the generated server priority list to the RTK rover (100) via the communication module (510) (S550).
[0136]
[0137] The NRTK correction signal provision system (1) including the above management device (500) can be configured to quickly replace an unstable RTK correction server when a situation arises in which two-way communication between the RTK correction server and the user becomes unstable.
[0138] FIG. 7 is a flowchart of a method for providing an NRTK correction signal using a VRS method to prevent quality degradation of two-way communication between an RTK server and a GNSS communication device indicating the position of agricultural machinery, according to another aspect of the present application.
[0139] Referring to FIG. 7, the NRTK correction signal providing method includes a step of booting an RTK rover (100) (S710); and a step of obtaining a server priority list from a management device (500) in the RTK rover (100) (S720).
[0140] In the above step (S720), the RTK rover (100) can download the server priority list created in advance by the management device (500) through the process of FIG. 5.
[0141] In addition, the method of FIG. 7 may include a step (S731) of determining a first RTK server (300a) for a foreground connection according to the priority of each RTK server in the priority list at the location of the RTK rover (100), and a step (S733 to S736) of establishing a foreground connection between the first RTK server (300a) and the RTK rover (100). Specifically, the step of establishing the foreground connection includes a step (S733) of attempting to connect to the first RTK server (300a) for a foreground connection; a step (S735) of confirming whether the RTK rover (100) successfully connects to the first RTK server (300a); If the RTK rover (100) succeeds in connecting to the first RTK server (300a) (S735), a step (S736) of establishing a foreground connection between the first RTK server (300a) and the RTK rover (100) is included.
[0142] The above RTK rover (100) can set up a foreground connection by sequentially changing the value of the priority c to be judged from the highest priority (i.e., priority 1) in the server priority list (S731 to S739).
[0143] The above RTK rover (100) can determine the first RTK server (300a) with the highest priority in the server priority list as the RTK rover for foreground connection (S731).
[0144] The above RTK rover (100) can confirm connection success when it is confirmed that a communication channel capable of receiving an RTK correction signal has been formed with the first RTK server (300a) (S735).
[0145] The above step (S736) may include a step of establishing a foreground connection; and a step of allowing the RTK rover (100) to communicate with the first RTK server through the established foreground connection and receive correction information about itself.
[0146] The above RTK rover (100) can set the communication channel with the first RTK server (300a) that has successfully connected to the foreground connection (S736).
[0147] When a foreground connection is established between the first RTK server (300a) and the RTK rover (100) in the above step (S736), the operation of the first RTK server (300a) sending correction information to the RTK rover (100) is activated.
[0148] For example, the RTK rover (100) can transmit terminal positioning information to a first RTK server (300a) connected to the foreground. Then, the first RTK server (300a) selects three or more reference stations 200 closest to the RTK rover (100) based on the terminal positioning information, and calculates an RTK correction signal most suitable for the location of the RTK rover (100) using the information of the selected reference stations and transmits the RTK correction signal to the RTK rover (100). The RTK rover (100) can obtain correction information (e.g., an RTK correction signal) from the connected first RTK server (300a).
[0149] The process of transmitting correction information from the first RTK server (300a) by the above RTK rover (100) is continuously activated while the foreground connection is maintained (S736).
[0150] In addition, the method of FIG. 7 may further include a step (S738) of changing the RTK server for the foreground connection to an RTK server (e.g., a second RTK server (300b)) having the next priority after the RTK server (e.g., the first RTK server (300a)) that failed to connect when the foreground connection with the first RTK server (300a) determined in the step (S731) fails; and a step (S739) of repeating the steps (S733 to S736) for the changed RTK server (300).
[0151] If the foreground connection with the first RTK server (300a) fails, it may be a case where the RTK rover (100) fails to connect to the first RTK server (300a) (S735).
[0152] As illustrated in FIG. 7, if it is confirmed that the RTK rover (100) has failed to connect to the first RTK server (300a), it can sequentially change the value of the foreground priority c. For example, the value of the foreground priority c can be changed to a value of the next priority, and the RTK server (300) having the next priority value can be updated as a new RTK server (300) for foreground connection (S738). Then, the RTK rover (100) performs operations for foreground connection to the second RTK server (300b) having the second priority (S733 to S735). If it is confirmed that the connection to the updated RTK server (300) has been successful, the RTK rover (100) can establish a foreground connection to the second RTK server (300b) (S736). Then, the second RTK server (300b) having the next priority provides correction information to the RTK rover (100) (S736).
[0153] In addition, the method of FIG. 7 includes a step (S741, S742) of determining a second RTK server (300b) for background connection according to a priority list within the priority list at the location of the RTK rover, and a step (S743 to S746) of establishing a background connection between the second RTK server (300b) and the RTK rover (100).
[0154] Specifically, the step of determining the second RTK server (300b) for the background connection includes a step (S741) of determining the second RTK server (300b) for the background connection according to the priority of each RTK server in the server priority list. In some embodiments, the step of determining the second RTK server (300b) for the background connection may further include a step (S742) of verifying the determination of the second RTK server (300b) by comparing the priority of the determined second RTK server (300b) with the priority of the determined first RTK server (300a).
[0155] In the above step (S741), the RTK rover (100) can determine the second RTK server (300b) as the RTK server (300) having the next priority over the RTK server (300a) determined for foreground connection in the above step (S731).
[0156] In the above step (S742), the RTK rover (100) compares the priority of the second RTK server (300b) and the priority of the determined first RTK server (300a), and if the priorities of the two servers (300a, 300b) do not match, verifies that the decision of the second RTK server (300b) is correct.
[0157] In addition, the step of establishing a background connection between the second RTK server (300b) and the RTK rover (100) includes a step of attempting to connect to the second RTK server (300b) for a background connection (S743); a step of confirming whether the RTK rover (100) successfully connects to the second RTK server (300b) (S745); a step of establishing a background connection between the second RTK server (300b) and the RTK rover (100) when the RTK rover (100) successfully connects to the second RTK server (300b) (S745); and a step of monitoring the background connection status between the second RTK server (300b) and the RTK rover (100) to maintain a background connection with the second RTK server while the foreground connection with the first RTK server is maintained (S747).
[0158] The above RTK rover (100) can confirm connection success when it is confirmed that a communication channel capable of receiving an RTK correction signal has been formed with the second RTK server (300b) (S745).
[0159] The above step (S746) may be to establish a background connection with a server (300) that has successfully connected. The RTK rover (100) may establish a communication channel with the second RTK server (300a) that has successfully connected as a background connection (S746).
[0160] When a background connection is established between the second RTK server (300b) and the RTK rover (100) in the above step (S746), the operation of the second RTK server (300b) sending correction information to the RTK rover (100) is maintained in a disabled state. This disabled state is maintained while the foreground connection with the first RTK server is maintained. That is, the RTK rover (100) is connected to different RTK servers (300a, 300b) simultaneously, but receives correction information only through the first RTK server (300a) and does not receive correction information through the second RTK server (300b).
[0161] In addition, the RTK rover (100) can monitor the background connection by transmitting a status check message to the second RTK server (300b) to check the background connection status in order to maintain a background connection with the second RTK server while the foreground connection with the first RTK server is maintained (S747).
[0162] The above step (S747) may include: a step of monitoring a background connection; a step of determining whether the background connection status is normal based on the monitoring result; and a step of maintaining the background connection if the connection status is normal.
[0163] For example, the RTK rover (100) may determine the background connection status as normal if it receives a response message for transmitting a status confirmation message. Conversely, if it fails to receive a response message, it may determine the background connection status as abnormal.
[0164] In addition, the method of FIG. 7 may further include a step (S748) of changing the RTK server for background connection, determined in step (S742), to an RTK server (e.g., a third RTK server (300)c) having the next priority after the RTK server (e.g., the second RTK server (300b)) that failed to connect when the background connection with the second RTK server (300b) determined in step (S741) fails; and a step (S748) of repeating steps (S742 to S746) for the changed RTK server (300).
[0165] In the case where the background connection with the second RTK server (300b) fails, the RTK rover (100) compares the priority of the second RTK server (300b) and the priority of the determined first RTK server (300a) and if the priorities of the two servers (300a, 300b) do not match, if the RTK rover (100) fails to connect to the second RTK server (300b), and if the connection status with the second RTK server (300b) is abnormal.
[0166] As illustrated in FIG. 7, if the RTK rover (100) confirms that connection to the second RTK server (300b) has failed, the value of the background priority n can be sequentially changed (S748). For example, the value of the background priority n can be changed to a value of the next priority, and the RTK server (300) having the value of the next priority can be updated as a new RTK server (300) for background connection (S748).
[0167] In addition, the method of FIG. 7 includes a step of monitoring a foreground connection state between the first RTK server and the RTK rover and determining whether the foreground connection state is normal based on the monitoring result (S760); a step of releasing the foreground connection between the first RTK server and the RTK rover if the foreground connection state is determined to be abnormal based on the monitoring result (S770); and a step of determining the second RTK server (300b) on which the background connection is maintained as an RTK server for a new foreground connection (S780), and a step of activating the background connection with the second RTK server (300b) that is deactivated to receive correction information for the RTK rover by communicating with the second RTK server (300b) as a foreground connection (S790).
[0168] In various embodiments of the present application, the RTK rover (100) may determine the foreground connection state as a non-normal state (S760) when the RTK-FIX state is released (e.g., by the processor (130)) or when correction data is not received from a foreground connected RTK server (e.g., the first RTK server (300a)).
[0169] RTK-FIX status means that the RTK system is fully utilizing correction data to perform highly accurate position tracking.
[0170] The fact that the RTK-FIX state is released means that the high-precision position tracking mode is no longer valid in the RTK (Real-Time Kinematic) system that is activated by interacting with the first RTK server (300a). The RTK rover (100) can determine whether to release the RTK-FIX state through various RTK-FIX state recognition algorithms based on the monitoring results.
[0171] If such an abnormal case does not occur, the RTK rover (100) determines the foreground connection status as a normal status, continues to obtain correction information from the first RTK server (300a), and corrects its own GNSS information with the obtained correction information of the first RTK server (300a) (S760).
[0172] On the other hand, when such an abnormal case occurs, the RTK rover (100) disconnects from the first RTK server (300a) and no longer obtains correction information from the first RTK server (300a) (S770). In addition, when the background connection with the second RTK server (300b) is activated as a foreground connection, the RTK rover (100) receives correction information from the second RTK server (300b) and corrects its GNSS information with the received correction information (S790).
[0173] The above RTK rover (100) can immediately receive correction information from the second RTK server (300b) by activating the background connection to the foreground connection at the same time as disconnecting from the first RTK server (300a) (S790).
[0174] In addition, the method of FIG. 7 further includes a step of repeating steps (S741 to S747) to establish a new background connection when the foreground connection status is determined to be non-normal according to the monitoring result. Specifically, the step of repeating steps (S741 to S747) to establish the new background connection may further include a step (S741, S742) of additionally determining a third RTK server as a new RTK server for the second connection according to the priority of each server in the priority list at the location of the RTK rover at the time the background connection is activated; and a step (S743 to S479) of establishing a background connection between the third RTK server and the RTK rover and maintaining the background connection while the foreground connection with the second RTK server is maintained.
[0175] In various embodiments of the present application, the steps (S731, S741) of determining the first RTK server (300a) and the second RTK server (300b) may be performed at the location of the RTK rover (100). In some embodiments, the steps (S731, S741) of determining the first RTK server (300a) and the second RTK server (300b) may be performed at each of the plurality of path locations defined as intervals of unit distance. Then, steps (S731 to S749) may be performed as many times as the number of path locations.
[0176] In this way, in the NRTK correction signal providing system (1), the RTK rover (100) maintains separate connections with the RTK server (300) currently receiving correction information and another RTK server (300), so that when a situation arises where a new connection must be made with another RTK correction server due to a communication problem with the RTK server currently receiving correction information, such as a connection instability caused by a temporary load on the server or an influence of the network environment, there is no need to separately initiate a new connection with the other RTK server.
[0177] As a result, the NRTK correction signal providing system (1) can quickly replace an unstable RTK server, thereby saving the time (e.g., several seconds) required to (1) connect to a new RTK correction server and (2) receive correction information from a new RTK server, and stably provide a service that provides RTK correction information.
[0178]
[0179] In various embodiments of the present application, instead of fixing the background connection with the server (300) with which the background connection has been established once, the RTK rover (100) may be further configured to maintain a background connection with the RTK server (300) with the best correction signal processing capability among the standby RTK servers (300) whose foreground connection will be replaced. That is, the RTK rover (100) may search for another background server with the best RTK correction signal processing capability even in the same normal state and update the background connection.
[0180] Specifically, the step of monitoring the background connection status between the second RTK server and the RTK rover to maintain the background connection with the second RTK server may include the steps of: obtaining processing status information of the second RTK server while the background connection is maintained; calculating a processing quality score of the background-connected RTK server based on the processing status information of the second RTK server; releasing the background connection with the second RTK server when the processing quality score is lower than a preset threshold quality score; obtaining processing status information of a third RTK server having the next priority after the second RTK server; calculating a processing quality score of the third RTK server based on the processing status information of the third RTK server; and determining whether the processing quality score of the third RTK server is equal to or higher than the threshold quality score; and releasing the existing background connection between the second RTK server and the RTK rover and newly establishing a background connection between the third RTK server and the RTK rover when the processing quality score of the third RTK server is equal to or higher than the threshold quality score.
[0181] In various embodiments of the present application, the step of calculating the processing quality score of the background-connected RTK server may include: a step of obtaining a server load of the background-connected RTK server, a communication throughput for the RTK rover, another simultaneously connected RTK rover, and a communication throughput of the background-connected RTK server for the other RTK rover, which are included in the processing status information; and a step of calculating the processing quality score of the background-connected RTK server based on the server load of the background-connected RTK server, the communication throughput for the RTK rover (100), the number of other simultaneously connected RTK rovers, and the communication throughput of the background-connected RTK server for the other RTK rovers.
[0182] The above RTK rover (100) can calculate the communication throughput of the second RTK server (300b) for the RTK rover (100) based on the result of monitoring the background connection status between the second RTK server (300b) and the RTK rover (100) obtained in the above step (S747).
[0183] The RTK rover (100) may monitor the background connection status and request the number of other RTK rovers (100) simultaneously connected to the second RTK server (300b) that are different from itself, the communication throughput of the background-connected RTK server (300) for the other RTK rovers (100), and the server load of the background-connected RTK server (300). The communication throughput of the background-connected RTK server (300) for the other RTK rovers (100) may be the communication throughput that the second RTK server (300b) allocates to each of the other RTK rovers (100) that provide correction signals at the time of the request.
[0184] In some embodiments, the step of calculating the processing quality score of the background-connected RTK server may further include the step of applying a weight to each of the measured processing quality evaluation factors. Then, the RTK rover (100) may calculate the processing quality score of the background-connected RTK server based on the server load of the background-connected RTK server to which the weights have been applied, the communication throughput for the RTK rover, the number of other concurrently connected RTK rovers, and the communication throughput of the background-connected RTK server for the other RTK rovers.
[0185] The RTK rover (100) can preset weights for each of the processing quality evaluation factors. The weights can be uniformly assigned or set based on input from the device operator.
[0186] By checking the processing quality of the background-connected RTK server (300) through this processing quality score, it is possible to prevent in advance a situation in which the second RTK server (300b) cannot properly provide an RTK correction signal when the foreground connection with the first RTK server (300a) is replaced with the second RTK server (300b).
[0187]
[0188] It will be apparent to those skilled in the art that the above NRTK correction signal providing system (1) may include other components not described herein. For example, the neural network generation device may include other hardware elements necessary for the operations described herein, including a network interface, an input device for data entry, and an output device for displaying, printing, or other data presentation.
[0189] The operations of the NRTK correction signal providing system (1) and method according to the embodiments described above can be implemented at least partially as a computer program and recorded on a computer-readable recording medium. For example, it can be implemented together with a program product comprising a computer-readable medium including program code, which can be executed by a processor to perform any or all of the described steps, operations, or processes.
[0190] The computer may be any computing device, such as a desktop computer, laptop computer, notebook computer, smartphone, or the like, or may be integrated into any such device. The computer is a device having one or more alternative and special purpose processors, memory, storage space, and networking components (either wireless or wired). The computer may run an operating system, such as, for example, an operating system compatible with Microsoft's Windows, Apple's OS X or iOS, a Linux distribution, or Google's Android OS.
[0191] The computer-readable recording medium includes all types of recording devices that store data that can be read by a computer. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. In addition, the computer-readable recording medium may be distributed across network-connected computer systems, so that computer-readable code can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present embodiment will be readily understood by those skilled in the art to which the present embodiment pertains.
[0192] While the present application discussed above has been described with reference to the embodiments illustrated in the drawings, these are merely exemplary, and those skilled in the art will understand that various modifications and variations of the embodiments are possible. However, such modifications should be considered within the technical protection scope of the present application. Therefore, the true technical protection scope of the present application should be determined by the technical concept of the appended claims.
[0193]
[0194] Embodiments of the present disclosure are expected to have high industrial applicability in the field of agricultural machinery using network communications, as they can prevent degradation of the quality of two-way communication between an RTK server and a GNSS communicator installed in agricultural machinery by maintaining a connection with multiple servers, quickly recover from an instability state due to performance degradation of a network RTK correction server even when there are a large number of GNSS receivers, and improve the quality of provision of RTK correction signals to individual GNSS receivers.
Claims
1. In a management device that manages multiple RTK servers, Each of the above plurality of RTK servers is connected to enable communication with one or more RTK rovers and multiple reference stations, and the RTK rovers are installed on agricultural machinery, The above management device, A database storing server-related information for the above multiple RTK servers, A communication module for communicating with the above RTK rover and reference station, Contains a control unit including a processor, The above control unit, A step of receiving the GNSS position of the RTK rover from the RTK rover; A step of receiving a driving guidance path from the above RTK rover; A step of searching for an RTK server located within a predetermined distance based on the geographical location and driving guidance route of a pre-stored RTK server; A step of determining the priority of the RTK server for the above RTK rover and generating a server priority list recording the priority; and characterized in that it is configured to perform a command including a step of transmitting the above server priority list to the RTK rover through the above communication module. Management device.
2. In the first paragraph, the step of generating a server priority list that records the priorities of RTK servers for the RTK rover is as follows: For each of the explored RTK servers, a step of calculating a connection priority score of each RTK server for the RTK rover; A step of prioritizing the searched RTK servers according to the connection priority scores of the generated individual RTK servers; and A step of generating a server priority list according to the priority of the above-mentioned searched RTK servers; characterized in that it comprises; Management device.
3. In the first paragraph, the step of generating a server priority list that records the priorities of RTK servers for the RTK rover is as follows: A step of calculating a connection priority score of an individual RTK server for the RTK rover at a plurality of path locations that are sequentially positioned at unit intervals on the driving guidance path of the RTK rover; A step of prioritizing the searched RTK servers according to the connection priority scores of individual RTK servers calculated for each path location; and A step of generating a priority list for the RTK rover by path position; characterized in that it comprises; Management device.
4. In the second paragraph, for each of the searched RTK servers, a step of calculating a connection priority score of each RTK server for the RTK rover; A step of obtaining a measurement result for a communication delay time (latency) between the above RTK rover and the corresponding RTK server; A step of obtaining measurement results for communication bandwidth between the RTK rover and the RTK server; A step of measuring a distance interval between the corresponding RTK server and the RTK rover based on the geographical location of the corresponding RTK server and the geographical location of the RTK rover stored in the database; A step of applying weights to each of the communication delay time, communication bandwidth, and distance interval of the above-mentioned RTK; A method characterized by comprising the step of calculating a connection priority score of an individual RTK server for the RTK rover based on the measurement results of the weighted RTK communication delay time, communication bandwidth, and distance interval. Management device.
5. In the fourth paragraph, the step of applying weights to each of the communication delay time, communication bandwidth, and distance interval of the corresponding RTK; A step of adjusting the preset initial weight values for the communication delay time and communication bandwidth of the corresponding RTK based on geographical information about the geographical area between the geographical location of the corresponding RTK server and the geographical location of the RTK rover, The step of adjusting the preset initial weight values for the communication delay time and communication bandwidth of the above RTK is as follows. If there is a mountain with a height greater than a critical height or a river with a width greater than a critical width in the above geographic area, the preset weights for the communication delay time and communication bandwidth of the RTK are adjusted to a weight value higher than the initial weight value based on the geographic information related to the mountain and the geographic information related to the river. Geographic information related to the above mountain includes the length of the portion parallel to the distance interval direction from the above mountain and the height of the above mountain. The geographic information related to the above river is characterized by including the river width of a portion parallel to the distance interval direction in the above river. Management device.
6. In an RTK rover connected to be able to communicate with an RTK server managed by a management device according to any one of claims 1 to 5, A GNSS receiver that receives GNSS positions from GNSS satellites; A communication unit communicating with at least one RTK server and the management device; A memory for storing a priority list received through the above communication unit; and A processor configured to perform a connection operation so that the GNSS receiver can communicate with the RTK server according to the above priority list. RTK rover.
7. In the 6th paragraph, the processor, A step of determining a first RTK server according to the priority of each RTK server in the priority list at the location of the RTK rover; A step of establishing a foreground connection between the first RTK server and the RTK rover, and communicating with the first RTK server to receive correction information for the RTK rover; A step of determining a second RTK server according to a priority list within the priority list at the location of the RTK rover; A step of establishing a background connection between the second RTK server and the RTK rover, and monitoring the background connection status between the second RTK server and the RTK rover to maintain the background connection with the second RTK server while the foreground connection with the first RTK server is maintained; A step of monitoring a foreground connection status between the first RTK server and the RTK rover and determining whether the foreground connection status is normal based on the monitoring result; A step of releasing the foreground connection between the first RTK server and the RTK rover when the foreground connection status is determined to be abnormal based on the monitoring results; A method for determining the second RTK server, which is maintaining the background connection, as an RTK server for a new foreground connection, and activating the background connection with the second RTK server, which is deactivated, as a foreground connection to receive correction information for the RTK rover by communicating with the second RTK server, characterized in that it is configured to perform a command including; RTK rover.
8. In the 7th paragraph, the processor, If the foreground connection status is determined to be abnormal based on the monitoring results, a step of additionally determining a third RTK server as a new RTK server for the background connection based on the server priority in the priority list at the location of the RTK rover at the time the background connection was activated; and characterized in that it is configured to further perform a command including the step of establishing a background connection between the third RTK server and the RTK rover, and maintaining the background connection while the foreground connection with the second RTK server is maintained. RTK rover.
9. In the 7th paragraph, the step of monitoring the background connection status between the second RTK server and the RTK rover to maintain the background connection with the second RTK server is as follows. A step of acquiring processing status information of the second RTK server while the background connection is maintained; A step of calculating a processing quality score of a background connected RTK server based on the processing status information of the second RTK server; A step of releasing the background connection with the second RTK server when the processing quality score is lower than a preset threshold quality score; A step of acquiring processing status information of a third RTK server having the next priority of the second RTK server; A step of calculating a processing quality score of the third RTK server based on the processing status information of the third RTK server; and A step of checking whether the processing quality score of the third RTK server is equal to or higher than the threshold quality score; and A method for controlling a processing quality score of the third RTK server, comprising: a step of releasing an existing background connection between the second RTK server and the RTK rover and newly establishing a background connection between the third RTK server and the RTK rover when the processing quality score of the third RTK server is equal to or higher than the threshold quality score; RTK rover.
10. In the 9th paragraph, the step of calculating the processing quality score of the background connected RTK server is, A step of obtaining the server load of the background connected RTK server included in the processing status information, the communication processing for the RTK rover, another simultaneously connected RTK rover, and the communication processing of the background connected RTK server for the other RTK rover; and A method for calculating a processing quality score of a background-connected RTK server based on a server load of the background-connected RTK server, a communication throughput for the RTK rover, the number of other simultaneously connected RTK rovers, and a communication throughput of the background-connected RTK server for the other RTK rovers, characterized in that it includes; RTK rover.
11. In the 7th paragraph, the processor, Characterized in that the foreground connection state is determined as non-normal when the RTK-FIX state is released or correction data is not received from the foreground connected RTK server. RTK rover.
Citation Information
Patent Citations
Shelter-type cooling and heating apparatus
KR1020200121765A
RTK terminal apparatus, method for generating position information, distance service system and method using RTK terminal apparatus
KR102544178B1
Multi-purpose urban agricultural modular planter
KR102791473B1
Method and system for updating localization maps of autonomous driving vehicles
US20180216942A1
Sensor fusion in agricultural vehicle steering
US20220187832A1