GNSS-based ad-hoc peer-to-peer network communication terminal
Patent Information
- Application Number
- CN202610727715.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-05-25
- Publication Date
- 2026-10-30
AI Technical Summary
由于多个通信终端之间缺少统一的时隙时间基准,当多个通信终端在相近时间内发送定位信息时,通信资源容易发生竞争
Smart Images

Figure CN123021374A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless communication technology, and in particular to a GNSS-based decentralized peer-to-peer network communication terminal. Background Technology
[0002] Decentralized peer-to-peer networks enable information exchange between communication terminals in scenarios lacking fixed communication infrastructure. In location sharing or location sensing scenarios, multiple communication terminals can send their own location information via wireless links and receive location information sent by other communication terminals.
[0003] In a decentralized peer-to-peer network, each communication terminal needs to determine its communication resources in the absence of a central communication terminal for unified scheduling. A common time slot reference and consistent resource occupancy rules enable each communication terminal to perform periodic location broadcasts within the same communication framework. However, if multiple communication terminals only use asynchronous broadcasting to send location information, it is difficult to coordinate the transmission times and communication resources of different communication terminals, which can easily lead to transmission overlap on the same communication resources.
[0004] In related solutions, communication terminals transmit location information via asynchronous broadcasting or triggered transmission. Because multiple communication terminals lack a unified time slot reference, communication resource contention can easily occur when multiple terminals transmit location information within a similar timeframe. Especially when there are a large number of communication terminals and the location information needs to be updated periodically, asynchronous broadcasting or triggered transmission may lead to communication conflicts or channel congestion, thereby reducing the reliability of location information transmission.
[0005] Therefore, a communication terminal and communication method suitable for decentralized peer-to-peer networks are needed, enabling multiple communication terminals to confirm communication resources based on a common time reference, location-driven resource mapping rules, and resource status broadcasting rules, and to periodically send and receive location information while reducing the possibility of communication conflicts. Summary of the Invention
[0006] This application provides a communication terminal, including a processor module, a Global Navigation Satellite System (GNSS) module, a communication module, and a storage module. The GNSS module is connected to the processor module and is used to output pulse-per-second (PPS) signals and navigation data messages. The communication module is connected to the processor module and is used for wireless communication with other communication terminals. The storage module is connected to the processor module and is used to store the mapping relationship between grid cells and communication resources. The processor module establishes a time slot reference for a decentralized peer-to-peer network based on the PPS signal and obtains the location information of the communication terminal based on the navigation data messages. The processor module determines the grid cell where the communication terminal is located based on the location information and, based on the mapping relationship, determines the pre-selected time slot resources mapped from the grid cell without requiring a central communication terminal to allocate communication resources. The processor module sends a heartbeat signal containing information about the pre-selected time slot resources and the application status through the communication module, and detects whether there are communication conflicts in the pre-selected time slot resources based on the heartbeat signals received from other communication terminals. In the absence of detected communication conflicts, the processor module determines the pre-selected time slot resource as the authorized time slot resource, and sends the location information of the communication terminal and receives the location information sent by other communication terminals based on the authorized time slot resource.
[0007] Through the configuration of communication terminals, a decentralized communication resource confirmation mechanism is formed, connecting the second pulse signal, the mapping relationship between grid cells and communication resources, and the heartbeat signal. The second pulse signal provides a common time reference, the mapping relationship supports local resource determination based on location information, and the heartbeat signal publishes resource requests, occupancy, and conflict statuses. Based on this decentralized communication resource confirmation mechanism, multiple communication terminals can confirm authorized time slot resources without a central communication terminal to uniformly allocate communication resources, and reduce the possibility of communication conflicts caused by communication resource competition during periodic location information transmission.
[0008] In some embodiments, the processor module may also correct the local timing parameters based on the local count value between two adjacent second pulse signals; mark the authorized time slot resource as an idle time slot resource when no heartbeat signal is received from a communication terminal occupying the authorized time slot resource within a preset time period; or join the network group by means of a network access request and security confirmation when the storage module does not store the network key of the target network group.
[0009] This application also provides a communication method based on a decentralized peer-to-peer network. The communication method includes: multiple communication terminals forming a decentralized peer-to-peer network via a wireless link; communication terminals acquiring second pulse signals and navigation data messages; communication terminals establishing a time slot reference for the decentralized peer-to-peer network based on the second pulse signals; communication terminals acquiring location information based on the navigation data messages; communication terminals determining their respective grid cells based on the location information; communication terminals determining pre-selected time slot resources mapped from the grid cells based on the mapping relationship between grid cells and communication resources, without requiring a central communication terminal to allocate communication resources; communication terminals sending a heartbeat signal carrying information about the pre-selected time slot resources and their application status, and detecting whether there is a communication conflict for the pre-selected time slot resources based on the heartbeat signals received from other communication terminals; if no communication conflict is detected, the communication terminals determining the pre-selected time slot resources as authorized time slot resources; and communication terminals sending their own location information based on the authorized time slot resources and receiving location information from other communication terminals.
[0010] This application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When executed by a processor, the computer program implements the communication method provided in this application. Attached Figure Description
[0011] Figure 1 This application provides schematic diagrams of the structure of communication terminals according to some embodiments; Figure 2 This application provides schematic diagrams of location-sensing scenarios in decentralized peer-to-peer networks, based on some embodiments of the present application. Figure 3 A flowchart illustrating a communication method based on a decentralized peer-to-peer network provided for some embodiments of this application; Figure 4 This application provides schematic diagrams illustrating the division of multi-level geographic grid cells in some embodiments. Figure 5 This is a schematic diagram illustrating the mapping relationship between grid cells and communication resources provided in some embodiments of this application; Figure 6 This application provides schematic diagrams of mesh reuse rules for some embodiments. Figure 7 A schematic diagram of the time-domain structure of communication resources provided in some embodiments of this application; Figure 8 A flowchart of time slot resource application provided for some embodiments of this application; Figure 9 A flowchart of time slot resource conflict arbitration provided for some embodiments of this application; Figure 10 A schematic diagram illustrating the periodic location mutual sensing process of multiple communication terminals within the same network group, provided for some embodiments of this application; Figure 11 This application provides schematic diagrams of emergency communication resources and emergency message forwarding for some embodiments. Figure 12 Block diagrams of computing device structures provided for some embodiments of this application. Detailed Implementation
[0012] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.
[0013] Figure 1 An example of the structure of a communication terminal 100 is shown. The communication terminal 100 is a terminal device capable of acquiring global navigation satellite system signals, communicating wirelessly with other communication terminals, and sending or receiving positioning information. For example... Figure 1 As shown, the communication terminal 100 includes a processor module 110, a global navigation satellite system module 120, a positioning receiving antenna 122, a communication module 130, an information transceiver antenna 132, a storage module 140, a human-computer interaction module 150, and a power supply module 160. The communication terminal 100 can be a handheld terminal, a vehicle-mounted terminal, a portable positioning communication terminal, an emergency communication terminal, a smart wearable device, or other devices capable of executing the communication methods of this application.
[0014] The positioning receiving antenna 122 is connected to the Global Navigation Satellite System (GNSS) module 120. The positioning receiving antenna 122 is used to receive GNSS signals. The GNSS module 120 is connected to the processor module 110. Based on the GNSS signals received by the positioning receiving antenna 122, the GNSS module 120 outputs a second pulse signal and navigation data messages. The second pulse signal provides an external time edge for the processor module 110 to establish a time slot reference. The navigation data messages are used to obtain the location and time information of the communication terminal 100.
[0015] The communication terminal 100 may further include an interrupt interface 112 and a local clock source 116. The interrupt interface 112 is connected between the global navigation satellite system module 120 and the processor module 110, and is used to provide a second pulse signal to the processor module 110. In some embodiments, the interrupt interface 112 may also be located on the processor 110; specifically, the interrupt interface 112 may be a general-purpose input / output (GPIO) pin on the processor module 110. The local clock source 116 is connected to the processor module 110 and is used to provide a local timing reference for the processor module 110 in timekeeping mode.
[0016] Figure 1The National Marine Electronics Association (NMEA) data represents the signal path data of the navigation data message input processor module 110. Figure 1 The complete physical wiring of the navigation data message transmission path between the Global Navigation Satellite System module 120 and the processor module 110 is not shown.
[0017] The communication module 130 is connected to the processor module 110. The information transceiver antenna 132 is connected to the communication module 130. The communication module 130 transmits heartbeat signals, location information, emergency messages, network access requests, node update information, network management information, or forwarding information through the information transceiver antenna 132, and receives heartbeat signals, location information, emergency messages, network access requests, node update information, network management information, or forwarding information from other communication terminals through the information transceiver antenna 132.
[0018] Storage module 140 is connected to processor module 110. Storage module 140 stores communication terminal identifiers, unique addresses, configuration information, network keys, network addresses, network node information, mapping relationships between grid cells and communication resources, heartbeat signal related information, communication resource occupancy information, capacity change information, and network status information. Storage module 140 can be a non-volatile memory, allowing the information stored in storage module 140 to be retained after power failure.
[0019] The human-machine interface module 150 is connected to the processor module 110. The human-machine interface module 150 outputs display information generated based on location information and receives input related to network confirmation, key confirmation, security confirmation, offline confirmation, or node deletion confirmation. In some embodiments, the human-machine interface module 150 includes a display unit and an input unit. The display unit is used to display location information, relative position information, orientation information, distance information, navigation prompts, network group information, or security confirmation information. The input unit is used to receive user confirmation information, network operation information, offline operation information, network key input information, or node deletion operation information.
[0020] The power supply module 160 is connected to the processor module 110. The power supply module 160 is used to supply power to the communication terminal 100. In addition, the power supply module 160 can also supply power to the processor module 110, the global navigation satellite system module 120, the communication module 130, the storage module 140, and the human-machine interaction module 150. Figure 1 This illustrates a connection relationship between the power supply module 160 and the processor module 110. Figure 1 The connection shown does not preclude power supply module 160 from supplying power to other modules.
[0021] The processor module 110 controls the time synchronization, time slot resource confirmation, and location information transmission and reception of the communication terminal 100. In some embodiments, the processor module 110 also performs key management, address allocation, security confirmation, relative position calculation, navigation information generation, node management, capacity adjustment, or energy management.
[0022] The processor module 110, the global navigation satellite system module 120, the communication module 130, and the storage module 140 work together to enable the communication terminal 100 to obtain positioning information and time slot reference locally, and to perform network entry, network exit, time slot resource application, positioning information transmission, positioning information reception, emergency message transmission, data forwarding, and cross-network group communication in a decentralized peer-to-peer network through the communication module 130.
[0023] Figure 2 This illustrates a scenario of location mutual sensing in a decentralized peer-to-peer network. For example... Figure 2 As shown, multiple communication terminals form a decentralized peer-to-peer network 300 via wireless links. The decentralized peer-to-peer network 300 is a network composed of multiple communication terminals connected by wireless links, and there is no central communication terminal for the unified allocation of communication resources. The multiple communication terminals may include a first communication terminal 310, a second communication terminal 320, a third communication terminal 330, and a fourth communication terminal 340. The first communication terminal 310 to the fourth communication terminal 340 can all adopt... Figure 1 The communication terminal 100 shown.
[0024] Global Navigation Satellite System (GNSS) satellite 200 transmits GNSS signals to communication terminals. Each communication terminal obtains the second pulse signal and position information based on the GNSS signal. Each communication terminal establishes a time slot reference based on the second pulse signal, aligning the time slot start points of multiple communication terminals under the same time reference.
[0025] Each communication terminal determines its geographical grid cell 400 based on its own location information, and determines pre-selected time slot resources based on the mapping relationship between geographical grid cells 400 and communication resources, without requiring the central communication terminal to allocate communication resources. Each communication terminal broadcasts the application status of the pre-selected time slot resources through a heartbeat signal, and completes time slot resource application, time slot resource conflict detection, and authorized time slot resource confirmation based on the received heartbeat signal.
[0026] In a decentralized peer-to-peer network 300, each communication terminal first determines the pre-selected time slot resources locally under a common time slot reference, and then makes the application status and occupancy status of the pre-selected time slot resources visible in the network through a heartbeat signal, and completes the confirmation of authorized time slot resources based on the visible resource status.
[0027] In some embodiments, communication terminals in a decentralized peer-to-peer network 300 can transmit location information without the involvement of cellular base stations, wireless LAN access points, or SIM cards. The communication terminals within the network constitute an autonomous closed-loop communication system. This autonomous closed-loop communication system is suitable for short-range location sensing scenarios where fixed communication infrastructure is lacking or access to public communication networks is inconvenient.
[0028] In one usage scenario, multiple communication terminals are carried by different users. Each terminal periodically broadcasts its own location information and passively receives location information from other terminals within the same network group. Based on the received location information, the terminals calculate their relative positions and display direction, distance, or navigation prompts through the human-machine interface module 150. This periodic broadcasting and passive receiving mechanism enables automatic location sensing among the terminals after network formation and reduces the need for users to send data during operation.
[0029] Figure 3 The flowchart illustrates a communication method based on a decentralized peer-to-peer network. For example... Figure 3 As shown, the communication method includes steps S320 to S395.
[0030] Multiple communication terminals form a decentralized peer-to-peer network 300. These terminals communicate with each other via wireless links. The decentralized peer-to-peer network 300 does not have a central communication terminal for the unified allocation of communication resources.
[0031] In step S320, the communication terminal acquires a second pulse signal and a navigation data message. The second pulse signal and navigation data message are output by the global navigation satellite system module 120 of the communication terminal. The second pulse signal provides a time edge associated with the global navigation satellite system time reference, and the navigation data message provides time and position information.
[0032] In step S330, the communication terminal establishes a time slot reference for the decentralized peer-to-peer network 300 based on the second pulse signal. The processor module 110 calibrates its local timer in response to the rising edge of the second pulse signal and updates the system time in conjunction with the time information in the navigation data message. The second pulse signal rising edge calibration and system time update enable each communication terminal to request time slot resources, detect communication conflicts, and transmit positioning information under an aligned time slot reference.
[0033] In step S340, the communication terminal acquires location information. The location information may include at least one of longitude, latitude, and altitude.
[0034] In step S350, the communication terminal determines its location within a grid cell based on the location information. A grid cell is a logically defined region pre-divided based on geographic coordinates. The communication terminal converts the location information into a grid cell index through boundary matching or a preset quantization operation.
[0035] In step S360, the communication terminal determines the pre-selected time slot resources. The pre-selected time slot resources are time slot resources that the communication terminal initially determines based on the mapping relationship between grid cells and communication resources, but have not yet confirmed their occupation. Without the need for the central communication terminal to allocate communication resources, the processor module 110 determines the frequency band resource group and time slot resources mapped from the current location locally based on the mapping relationship between grid cells and communication resources, thereby obtaining the pre-selected time slot resources.
[0036] In step S370, the communication terminal sends a heartbeat signal. The heartbeat signal represents time slot resource application, time slot resource occupancy, time slot resource conflict, capacity change, or time slot resource release. The heartbeat signal includes information about the pre-selected time slot resources and the application status, which can indicate application usage status, authorized usage status, communication conflict status, or resource release status.
[0037] In step S380, the communication terminal determines whether a communication conflict exists. Based on the heartbeat signals received from other communication terminals, the communication terminal detects whether there is a communication conflict for the pre-selected time slot resource, such as whether multiple communication terminals are requesting or occupying the same time slot resource.
[0038] If a communication conflict is detected, the communication terminal executes step S385. In step S385, the communication terminal reselects a pre-selected time slot resource and returns to step S370 to retransmit the heartbeat signal.
[0039] If no communication conflict is detected, the communication terminal executes step S390. In step S390, the communication terminal determines the pre-selected time slot resource as an authorized time slot resource. The authorized time slot resource is the time slot resource that the communication terminal can use to send location information, heartbeat signals, forwarding information, or other network information after completing the application and conflict detection through heartbeat signals.
[0040] In step S395, the communication terminal periodically sends its own location information based on authorized time slot resources and receives location information sent by other communication terminals. The communication terminal generates relative position information 940 based on its own location information and the received location information from other communication terminals.
[0041] Steps S320 to S395 combine time synchronization, local mapping of location to communication resources, heartbeat-based resource request, communication conflict detection, and periodic broadcasting of location information. Therefore, even in the absence of a central scheduling mechanism, the communication terminal can still reduce the possibility of communication conflicts during the periodic transmission of location information through a distributed time-slot resource confirmation mechanism.
[0042] Before further explaining the determination of grid cells and the application for time slot resources, let’s first explain one implementation of the communication terminal 100 establishing a time slot time reference.
[0043] The communication terminal 100 switches between a timekeeping mode and a PPS (Pulse Per Second) time synchronization mode. The timekeeping mode is used for local timing when the communication terminal 100 has not yet received a valid second pulse signal or has not yet completed system time correction. The PPS time synchronization mode is used by the communication terminal 100 to establish a time slot reference based on the second pulse signal and navigation data messages output by the Global Navigation Satellite System module 120.
[0044] In timekeeping mode, after the communication terminal 100 is powered on, the processor module 110 initializes the local timer. This local timer can be denoted as Timer0. The timing interval of Timer0 can be denoted as dTimer0. Each time an interrupt occurs in Timer0, the processor module 110 increments the system time by dTimer0. The system time starting point in timekeeping mode can be zero seconds or other preset starting points. The timing accuracy in timekeeping mode is related to the accuracy of the local clock source. For example, when the local clock source is a crystal oscillator with a precision of ±1 parts per million (ppm), the theoretical time error per second can be on the order of microseconds, and cumulative errors may occur after continuous operation for a period of time. To reduce communication conflicts that may be caused by time slot deviations due to random power-ups between different communication terminals, before the communication terminal 100 completes PPS time synchronization, the processor module 110 restricts the communication module 130 from sending location information, heartbeat signals, or other information occupying the normal communication time slot 640 to the decentralized peer-to-peer network 300.
[0045] In PPS time synchronization mode, the second pulse signal of the Global Navigation Satellite System module 120 is connected to the interrupt interface of the processor module 110. When the rising edge of the second pulse signal arrives, the processor module 110 triggers interrupt processing. In the interrupt processing, the processor module 110 clears the register used for dTimer0 counting in Timer0 and clears the fractional part of the second in the system time, aligning the timing process of Timer0 and the system time with the integer second edge.
[0046] The Global Navigation Satellite System (GNSS) module 120 also outputs navigation data messages to the processor module 110 via a digital interface. The navigation data messages may include NMEA messages. After receiving a complete positioning or time message, the processor module 110 parses the date and time information from the navigation data message. The date and time information can be expressed as Coordinated Universal Time (UTC). Navigation data messages are typically output within a preset time window following the second pulse signal; therefore, the processor module 110 can combine the integer second edge provided by the second pulse signal with the absolute time provided by the navigation data message to update the system time.
[0047] In some embodiments, the navigation data message includes a Recommended Minimum Specific GPS / TRANSIT Data (GPRMC) message. The processor module 110 can parse date and time information from the GPRMC message and use the parsed date and time information as UTC information for updating the system time.
[0048] In one system time update method, processor module 110 reads the current system time SYS_Time, and reads the current count value CNT of Timer0 and the overflow value CNT0 of Timer0. Processor module 110 calculates the elapsed time residual dms within the current dTimer0 time period based on dTimer0, CNT, and CNT0. dms can satisfy: dms = dTimer0 × CNT / CNT0 Processor module 110 updates the system time based on UTC and DMS. The updated system time can be expressed as: SYS_Time = UTC_s + SYS_Time_ms + dms UTC_s represents the whole-second information of the UTC time in the navigation data message; SYS_Time_ms represents the fractional-second part of the read system time. Processor module 110 can use a system time update formula to update the system time based on the second pulse signal, the navigation data message, and the local timing residual. In other embodiments, processor module 110 establishes the time slot reference using timestamp alignment, counter clearing, time residual compensation, or filtering time synchronization.
[0049] In some embodiments, the second pulse signal output by the Global Navigation Satellite System (GNSS) module 120 has a nanosecond-level time edge accuracy. Different models of GNSS modules 120 may have different second pulse time edge accuracies. The processor module 110 sets a protection interval 650 based on the time edge accuracy of the second pulse signal. Thus, even if different communication terminals 100 use GNSS modules 120 with different second pulse output accuracies, the protection interval 650 can still absorb time slot boundary deviations introduced by second pulse signal errors, local clock errors, and interrupt processing time.
[0050] In some embodiments, the processor module 110 further determines the frequency deviation of the local clock source based on the local count value between two adjacent second pulse signals. Specifically, the processor module 110 may record a first count value of the local counter when the transition edge of the first second pulse signal arrives, and record a second count value of the local counter when the transition edge of the next second pulse signal arrives. The processor module 110 determines the actual count value of the local clock source within one second pulse period based on the difference between the first count value and the second count value, and compares the actual count value with the nominal count value to determine the frequency deviation of the local clock source.
[0051] Processor module 110 corrects local timing parameters based on frequency deviation. Local timing parameters may include at least one of the following: local timer counting period, count compensation value, time slot boundary calculation parameters, or guard interval 650. Through dynamic frequency compensation, processor module 110 reduces the impact of local clock source drift on time slot boundaries between two adjacent second pulse signals, thereby improving the stability of time slot alignment among multiple communication terminals 100.
[0052] In some embodiments, the Global Navigation Satellite System (GNSS) module 120 includes a radio frequency (RF) processing circuit and a baseband processing circuit. The RF processing circuit is connected to the positioning receiving antenna 122 and performs at least one of the following processing on the GNSS signal received by the positioning receiving antenna 122: filtering, low-noise amplification, down-conversion, or analog-to-digital conversion. The baseband processing circuit is connected to the RF processing circuit and performs at least one of the following processing on the signal processed by the RF processing circuit: acquisition, tracking, demodulation, pseudorange measurement, ephemeris calculation, or navigation data calculation.
[0053] The Global Navigation Satellite System (GNSS) module 120 outputs navigation data messages and second pulse signals based on the calculation results of the baseband processing circuit. The navigation data messages may include at least one of the following: time information, longitude information, latitude information, altitude information, velocity information, heading information, satellite status information, or positioning validity information. The second pulse signal is generated based on the satellite time reference obtained by the GNSS module 120 and output to the processor module 110, enabling the processor module 110 to establish a time slot time reference.
[0054] The Global Navigation Satellite System (GNSS) module 120 can support a single satellite navigation system or multiple satellite navigation systems. These multiple satellite navigation systems may include at least one of the Global Positioning System (GPS), BeiDou Navigation Satellite System (BDS), GLONASS, Galileo, or other satellite navigation systems. This application does not limit the type of satellite navigation system supported by the GNSS module 120.
[0055] The combination of timekeeping mode and PPS time synchronization mode enables the communication terminal 100 to avoid sending false information before obtaining an external time reference, and to establish a time slot time reference aligned with other communication terminals after obtaining the second pulse signal and navigation data message.
[0056] After the communication terminal 100 establishes the time slot reference, the following is combined with Figures 4 to 9 Further explanation Figure 3 Steps S350 to S390 involve grid cell determination, resource mapping, time slot reuse, time domain structure, time slot resource application, and conflict arbitration.
[0057] Figure 4 This illustrates the multi-level geographic grid unit division method. For example... Figure 4 As shown, the geographic grid cell 400 includes a base grid cell 410. The base grid cell 410 includes at least one first-level grid cell. The first-level grid cell may include a first region 421, a second region 422, a third region 423, and a fourth region 424.
[0058] A primary grid cell includes multiple secondary grid cells. These multiple secondary grid cells may include a first secondary grid cell 431, a second secondary grid cell 432, a third secondary grid cell, a fourth secondary grid cell, a fifth secondary grid cell, a sixth secondary grid cell, a seventh secondary grid cell, an eighth secondary grid cell, and a ninth secondary grid cell 439.
[0059] Figure 4 Within the first region 421, the squares marked 1 to 9 represent the first to ninth second-level grid units 431 to 439, respectively. Squares 1 to 9 in other first-level grid units can represent the corresponding second-level grid units in the same manner. A first-level grid unit can be represented by at least one of the first to fourth regions 424, and a second-level grid unit can be represented by squares within each region.
[0060] The processor module 110 converts the location information into a geographic grid index. This geographic grid index conversion can be achieved through boundary matching or by performing a preset quantization operation on the latitude and longitude coordinates. After completing the geographic grid index conversion, the communication terminal 100 can determine the first-level and second-level grid cells mapped from the current location locally without needing to receive resource allocation instructions from the central communication terminal or other nodes in the network.
[0061] Multi-level geographic grid unit division links geographic location with the process of determining communication resources, providing a spatial index basis for communication terminal 100 to autonomously determine candidate time slot resources.
[0062] Figure 5 This illustrates the mapping relationship between grid cells and communication resources. Communication resources are resources used to carry wireless transmissions and can include frequency domain resources and time domain resources. For example... Figure 5 As shown, communication resources include frequency band resource groups and time slot resources. Frequency band resource groups may include a first frequency band resource group 511, a second frequency band resource group 512, a third frequency band resource group 513, and a fourth frequency band resource group 514. Time slot resources may include emergency communication time slots and multiple normal communication time slots. Multiple normal communication time slots may include a first normal communication time slot 532, a second normal communication time slot 533, a fourth normal communication time slot, a fifth normal communication time slot, a sixth normal communication time slot, a seventh normal communication time slot, an eighth normal communication time slot, and a ninth normal communication time slot 540.
[0063] The first region 421 is mapped to the first frequency band resource group 511. The second region 422 is mapped to the second frequency band resource group 512. The third region 423 is mapped to the third frequency band resource group 513. The fourth region 424 is mapped to the fourth frequency band resource group 514. The first frequency band resource group 511 may include at least one frequency resource, for example, F1={f11, f12, ...}. The second frequency band resource group 512 may include at least one frequency resource, for example, F2={f21, f22, ...}. The third frequency band resource group 513 may include at least one frequency resource, for example, F3={f31, f32, ...}. The fourth frequency band resource group 514 may include at least one frequency resource, for example, F4={f41, f42, ...}.
[0064] The first secondary grid cell 431 is mapped to the first normal communication time slot 532. The second secondary grid cell 432 is mapped to the second normal communication time slot 533. The third secondary grid cell is mapped to the third normal communication time slot. The fourth secondary grid cell is mapped to the fourth normal communication time slot. The fifth secondary grid cell is mapped to the fifth normal communication time slot. The sixth secondary grid cell is mapped to the sixth normal communication time slot. The seventh secondary grid cell is mapped to the seventh normal communication time slot. The eighth secondary grid cell is mapped to the eighth normal communication time slot. The ninth secondary grid cell 439 is mapped to the ninth normal communication time slot 540.
[0065] Therefore, after determining the primary and secondary grid cells, the communication terminal 100 can locally determine the frequency band resource group and time slot resources. The mapping relationship between the grid cell 400 and the communication resources transforms the location information of the communication terminal 100 into pre-selected time slot resources, enabling communication terminals at different locations to select frequency domain resources and time domain resources according to consistent rules. Based on the local mapping process between the grid cell 400 and the communication resources, the communication terminal 100 can generate pre-selected time slot resources to be verified by the heartbeat signal without receiving resource allocation instructions from the central communication terminal. The mapping relationship between the grid cell 400 and the communication resources can be stored as a mapping table in the storage module 140, or it can be calculated by the processor module 110 through a preset mapping algorithm.
[0066] In some embodiments, communication module 130 supports a single channel. In this implementation, processor module 110 does not perform a region-to-frequency band resource group search. Instead, processor module 110 treats the first frequency band resource group 511, the second frequency band resource group 512, the third frequency band resource group 513, and the fourth frequency band resource group 514 as the same available channel resource, and treats the first normal communication time slot 532 to the ninth normal communication time slot 540 as available time slot resources. The implementation of single-channel support by communication module 130 still establishes the time slot reference using a second pulse signal and performs time slot allocation and conflict arbitration using a heartbeat signal.
[0067] In some embodiments, communication resources are not limited to frequency band resource groups and time slot resources. Communication resources also include code division resources or spatial dimension resources. Code division resources may include spreading codes, scrambling codes, orthogonal codes, orthogonal masks, or other coding resources capable of distinguishing communication channels. Spatial dimension resources may include directional antenna beam directions, beam numbers, spatial stream numbers, or other resources capable of distinguishing communication links in the spatial dimension.
[0068] Processor module 110 can map grid cell 400 to at least one of frequency band resource group, time slot resource, code division resource, and spatial dimension resource. In other words, processor module 110 can determine frequency domain resources based on the first-level grid cell where communication terminal 100 is located, determine time domain resources based on the second-level grid cell where communication terminal 100 is located, and further determine code division resources or spatial dimension resources based on grid cell 400, network group, communication terminal identifier, service type, or channel state.
[0069] In one implementation, the communication terminal 100 determines the pre-selected time slot resources based on frequency band resource groups and time slot resources. In another implementation, the communication terminal 100 determines the pre-selected time slot resources based on a combination of frequency band resource groups, time slot resources, and code division resources. In yet another implementation, the communication terminal 100 determines the pre-selected time slot resources based on a combination of frequency band resource groups, time slot resources, and spatial dimension resources. By introducing code division resources or spatial dimension resources, the communication terminal 100 can expand the allocatable dimensions of communication resources without changing the basic time slot time base.
[0070] Figure 6 The grid reuse rules are shown. For example... Figure 6 As shown, a secondary grid cell may include a central grid cell 440, adjacent grid cells 450, and multiplexed grid cells 460. The central grid cell 440 represents the secondary grid cell where the communication terminal 100 is currently located. Adjacent grid cells 450 represent secondary grid cells adjacent to the central grid cell 440. Multiplexed grid cells 460 represent secondary grid cells spaced apart from the central grid cell 440 and meeting preset multiplexing conditions. Grid boundaries define the logical boundaries of the secondary grid cells. A preset communication range 480 is used to determine whether the multiplexed grid cell 460 meets the preset multiplexing conditions.
[0071] Figure 6 In the diagram, L0 represents the central grid cell 440, the L1 squares surrounding L0 represent adjacent grid cells 450, and the L2 squares surrounding the outer edge of L1 represent reused grid cells 460. Figure 6 The grid lines in the text represent the grid boundaries, and R represents the preset communication range of 480.
[0072] In one grid multiplexing method, for any central grid cell 440, the central grid cell 440 can be denoted as L0, the eight secondary grid cells adjacent to L0 can be denoted as L1, and the multiple secondary grid cells separated from L0 by a preset communication range 480 can be denoted as L2. The processor module 110 can use the time slot resources mapped by L0 as candidate time slot resources, and can use the time slot resources mapped by L2 as candidate time slot resources if L2 and L0 meet the preset multiplexing conditions.
[0073] Taking the ninth secondary grid cell 439 in the first region 421 as L0 as an example, L1 can include the eighth, fifth, and sixth secondary grid cells in the first region 421, and can also include several secondary grid cells in other regions adjacent to the first region 421. L2 can include the seventh, fourth, first, second, and third secondary grid cells in the first region 421, and can also include several secondary grid cells in the second, third, and fourth regions 422, which satisfy the preset reuse conditions with L0.
[0074] Based on the L0, L1, and L2 multiplexing rules, processor module 110 determines a set of candidate working time slots. For example, when L0 is the ninth second-level grid cell 439 in the first region 421, the set of candidate working time slots may include F1_slot9, F1_slot7, F1_slot4, F1_slot1, F1_slot2, F1_slot3, F2_slot1, F2_slot2, F2_slot5, F2_slot8, F3_slot2, F3_slot5, F3_slot4, F4_slot6, F4_slot5, F4_slot4, and F4_slot1. The set of candidate working time slots illustrates one method for determining candidate time slot resources based on region and second-level grid cells. Other grid numbers, region numbers, or candidate set generation methods can also be used to determine candidate time slot resources.
[0075] By including spatially compatible grid cells that meet reuse criteria in the candidate pool, the communication terminal 100 can improve the spatial reuse rate of communication resources while reducing local time slot resource contention. If the time slot resources selected by different communication terminals overlap due to positioning errors or edge conditions of the communication range, subsequent heartbeat signals and conflict arbitration procedures can further address the overlap of time slot resources.
[0076] Figure 7 This illustrates the time-domain structure of the communication resources. For example... Figure 7 As shown, the time-domain structure includes a data update cycle 610. The data update cycle 610 includes at least one time slice 620. The time slice 620 includes an emergency communication time slot 630 and multiple normal communication time slots 640. The multiple normal communication time slots 640 can be mapped to... Figure 5 The first normal communication time slot 532 to the ninth normal communication time slot 540 are shown.
[0077] Emergency communication time slot 630 can be mapped to slot 0. Normal communication time slot 640 can be mapped to slots 1 through 9. T represents the duration of data update cycle 610. dT represents the duration of time slice 620. S represents the number of time slices 620 in data update cycle 610. T, dT, and S can satisfy: T = S × dT In a data update cycle 610, each frequency band resource group can have 9S normal communication time slots 640 that can be used to transmit service data.
[0078] Emergency communication time slot 630 can have a duration ΔT0. The durations of the first normal communication time slot 532 to the ninth normal communication time slot 540 can be determined according to the structure of normal communication time slot 640. The duration of a time slice 620 can satisfy: dT = ΔT0 + 9 × slot Normal communication time slot 640 includes a guard interval 650, a service information transmission interval 660, a heartbeat signal transmission interval 670, and another guard interval 650. tsi represents the duration of the service information transmission interval 660. tsh represents the duration of the heartbeat signal transmission interval 670. ΔT represents the duration of the guard interval 650. The duration of a normal communication time slot 640 can satisfy: slot = ΔT + tsi + tsh + ΔT ΔT is determined based on the local clock error of the communication terminal 100, the error of the second pulse signal output by the global navigation satellite system module 120, and the time consumed by the processor module 110 in processing interrupts. For example, ΔT can satisfy: ΔT = Δt1 + Δt2 + Δt3 Δt1 represents the local clock error, Δt2 represents the second pulse signal error, and Δt3 represents the interrupt processing time.
[0079] The guard interval 650 in the normal communication time slot 640 is used to absorb minor time deviations between communication terminals. The service information transmission interval 660 is used to transmit location information or other service information. The heartbeat signal transmission interval 670 is used to transmit heartbeat signals, enabling other communication terminals to know the application status, occupancy status, or conflict status of relevant communication resources.
[0080] If communication terminal 100 has not completed PPS synchronization, processor module 110 restricts communication module 130 from sending information in normal communication time slot 640. After communication terminal 100 completes PPS synchronization, each normal communication time slot 640 is aligned with the time slot position in data update cycle 610. Thus, multiple communication terminals can send heartbeat signals and location information based on the same time slot reference.
[0081] In this application, the second pulse signal is used not only to obtain absolute time, but also to enable multiple communication terminals to perform time slot resource requests, communication conflict detection, and location information transmission under a common time slot reference.
[0082] Based on processor module 110 Figure 7 After determining the time-domain structure shown, the boundaries of each time slot are then determined as follows: Figure 8 Further explanation of the time slot resource application process for communication terminal 100 to confirm whether it can occupy the pre-selected time slot resources.
[0083] Figure 8 This is a flowchart illustrating the time slot resource application process for some embodiments of this application. Figure 8 As shown, the time slot resource application process 700 includes steps S710 to S780.
[0084] In step S710, processor module 110 determines pre-selected time slot resources. Based on the mapping relationship between the grid cell where communication terminal 100 is located and communication resources, processor module 110 determines pre-selected time slot resources without requiring the central communication terminal to allocate communication resources. The pre-selected time slot resources are communication resource candidates obtained based on the location mapping relationship and awaiting confirmation via a heartbeat signal.
[0085] In some embodiments, the processor module 110 determines a plurality of idle time slot resources based on the received heartbeat signal, and selects one or more pre-selected time slot resources from the plurality of idle time slot resources for application. The one or more pre-selected time slot resources can form a multi-candidate application set.
[0086] When a pre-selected time slot resource in the multi-candidate application set is determined to be an authorized time slot resource, the processor module 110 releases the pre-selected time slot resources that were not determined to be authorized time slot resources. If all pre-selected time slot resources in the multi-candidate application set are detected to have communication conflicts, the processor module 110 releases all applied pre-selected time slot resources and re-determines pre-selected time slot resources. Multi-candidate time slot application increases the probability of successful application for communication terminal 100 when multiple idle time slot resources exist, and reduces the continuous occupation of idle resources after authorization. The heartbeat signal broadcasts the application status of pre-selected time slot resources to other communication terminals, enabling authorized time slot resources to be confirmed based on local mapping results and network resource status.
[0087] In step S720, the processor module 110 configures the request status. The request status indicates that the communication terminal 100 is requesting the use of pre-selected time slot resources.
[0088] In step S730, processor module 110 generates a heartbeat signal. The heartbeat signal includes information about the pre-selected time slot resources and the application status. In some embodiments, the heartbeat signal further includes at least one of the following: a communication terminal identifier, information about currently occupied time slot resources, information about authorized time slot resources, duration of currently occupied time slot resources, the requesting communication terminal identifier, the number of time slices, a capacity change flag, or the effective time of a capacity change. The communication terminal identifier is used to distinguish the communication terminal sending the heartbeat signal.
[0089] Time slot allocation status includes states such as allocation completed, allocation in use, communication conflict, and authorized use. Capacity change status includes states such as expansion completed, expansion in progress, compression in progress, and compression completed. Allocation and capacity change statuses can be represented by a two-bit binary field or encoded using other fields.
[0090] In step S740, the communication module 130 sends a heartbeat signal. By sending the heartbeat signal, the communication terminal 100 notifies other communication terminals within its communication coverage area of the application status of the pre-selected time slot resources, making the application status of the pre-selected time slot resources visible in the decentralized peer-to-peer network 300.
[0091] In step S750, the processor module 110 determines whether a communication conflict exists. Based on the heartbeat signals received from other communication terminals, the processor module 110 determines whether the pre-selected time slot resources have been requested or occupied by other communication terminals.
[0092] If no communication conflict is detected, step S760 is executed. In step S760, processor module 110 determines the authorized time slot resource. Processor module 110 determines the pre-selected time slot resource as the authorized time slot resource and updates the application status to the authorized use status in the subsequent heartbeat signal.
[0093] If a communication conflict is detected, step S770 is executed. In step S770, the processor module 110 reselects the pre-selected time slot resource and re-executes the resource request process.
[0094] In step S780, the communication terminal 100 occupies the authorized time slot resources. The communication terminal 100 sends location information and heartbeat signals based on the authorized time slot resources.
[0095] Through the time slot resource application process 700, the communication terminal 100, without a central scheduling node, confirms the locally determined pre-selected time slot resource as the authorized time slot resource through heartbeat signal application and communication conflict detection.
[0096] Figure 9 This illustrates the time slot resource conflict arbitration process. For example... Figure 9 As shown, the time slot resource conflict arbitration process 800 includes steps S810 to S880.
[0097] In step S810, the communication module 130 receives a heartbeat signal. The heartbeat signal is sent by other communication terminals and is used to carry information related to time slot resource request status, occupancy status, conflict status, or resource release.
[0098] In step S820, processor module 110 parses the time slot resource information. Processor module 110 parses at least one of the following from the heartbeat signal: communication terminal identifier, information on pre-selected time slot resources, information on authorized time slot resources, application status, communication conflict status, current occupied time slot resource duration, and conflict release object identifier.
[0099] In step S830, the processor module 110 detects time slot resource conflicts. The processor module 110 compares the time slot resources it has requested or occupied with the time slot resources declared in the received heartbeat signal, and determines whether multiple communication terminals have requested or occupied the same time slot resource.
[0100] If no time slot resource conflict is detected, the communication terminal 100 executes step S845 to maintain the currently authorized time slot resources.
[0101] If a time slot resource conflict is detected, step S840 is executed. In step S840, the processor module 110 compares the occupied duration. The occupied duration represents the duration for which the communication terminal occupies the conflicting time slot resource.
[0102] In step S850, processor module 110 determines the conflict release object. Processor module 110 can determine the conflict release object identifier based on the comparison result of the occupied time slot duration. The conflict release object identifier is used to indicate the communication terminal releasing the time slot resource. For example, a communication terminal that occupies the time slot resource for a longer period can maintain the authorized time slot resource, while a communication terminal that occupies the time slot resource for a shorter period can be designated as the conflict release object. In other embodiments, processor module 110 can also determine the conflict release object based on one or more parameters selected from communication terminal priority, communication terminal identifier, application status, and service type.
[0103] In step S860, the communication module 130 sends a conflict status. The communication module 130 sends a heartbeat signal carrying the communication conflict status and the identifier of the conflict release object.
[0104] In step S870, the communication terminal indicated by the conflict release object identifier releases the time slot resource.
[0105] In step S880, the communication terminal that released the time slot resource re-requests the time slot resource.
[0106] Through the time slot resource conflict arbitration process 800, the pre-selected time slot resources obtained through local mapping are converted into authorized time slot resources after the heartbeat signal does not indicate a communication conflict. The heartbeat signal carries the communication resource application status, occupancy status, and conflict status, enabling each communication terminal in the decentralized peer-to-peer network 300 to be aware of the communication resource status. The communication terminal 100 identifies time slot resource conflicts based on the heartbeat signal and prompts the communication terminal that has experienced a communication conflict to re-apply for time slot resources, thereby reducing communication conflicts during the periodic location information transmission process.
[0107] In some embodiments, the processor module 110 can also detect node disconnection based on heartbeat signals. If the processor module 110 does not receive a heartbeat signal from a communication terminal occupying authorized time slot resources within a preset time period, the processor module 110 marks the authorized time slot resources occupied by the timed-out communication terminal as idle time slot resources and updates the communication resource occupancy information in the storage module 140. Heartbeat timeout detection enables the communication terminal 100 to reclaim the time slot resources occupied by the disconnected communication terminal after the node suddenly loses power, leaves the communication coverage area, or actively withdraws from the network.
[0108] The communication terminal 100 adjusts the number of time slices in the data update cycle 610 according to the load status of communication resources. The adjustment of the number of time slices includes two scenarios: expansion and compression. Expansion is used to increase the number of available normal communication time slots 640, while compression is used to reduce the number of idle normal communication time slots 640 and shorten the data update cycle 610.
[0109] During capacity expansion, each communication terminal monitors the remaining time slot resources in the network via a heartbeat signal. When the processor module 110 detects that the remaining time slot resources are lower than a preset percentage of the initial capacity or the current capacity, the processor module 110 initiates capacity expansion and writes a capacity change flag, the number of time slots after expansion, and the effective time of the capacity change into the heartbeat signal. The number of time slots after expansion can be increased by a preset percentage based on the current number of time slots, for example, by 20% of the initial number of time slots. The expansion range can be determined based on network load, the number of nodes, or the data update cycle 610.
[0110] After receiving a heartbeat signal carrying the capacity expansion flag, other communication terminals update the capacity change information in their local heartbeat signals to the received expansion information. The communication terminal that received the expansion information modifies its data update period 610 after the capacity change takes effect and adjusts its transmission time slots according to the new number of time slices. After adjustment, the communication terminal updates the capacity change flag to indicate expansion is complete. If some communication terminals do not receive the expansion information before the effective time, or if time slot resource conflicts occur after adjustment, the communication terminals that have not completed adjustment can re-apply for time slot resources by executing the time slot resource application process 700.
[0111] During compression, each communication terminal monitors the number of idle time slots in the network via a heartbeat signal. When the processor module 110 detects that the network has been expanded and the number of idle time slots is higher than a preset percentage of the current capacity, the processor module 110 initiates compression and writes a capacity change flag, the number of time slots after compression, and the effective time of the capacity change into the heartbeat signal. The number of time slots after compression can be reduced by a preset percentage based on the current number of time slots, for example, by 20% of the initial number of time slots. The compression margin can be determined based on network load, the number of nodes, or the data update cycle 610.
[0112] After receiving a heartbeat signal carrying a compression flag, other communication terminals update the capacity change information in their local heartbeat signals with the received compression information. Communication terminals located outside the compressed time slot range re-request normal communication time slots 640 that still exist after compression before the capacity change takes effect. Communication terminals that receive compression information modify their data update cycle 610 after the capacity change takes effect and update the capacity change flag to indicate compression is complete. If some communication terminals do not receive the compression information before the effective time, or if time slot resource conflicts occur after adjustment, communication terminals that have not completed the adjustment can execute the time slot resource request process 700 to re-request time slot resources.
[0113] By dynamically adjusting the number of time slices, the communication terminal 100 can expand the time domain resource capacity when the number of network nodes increases and shorten the data update cycle 610 when the number of network nodes decreases, thereby adjusting between communication capacity and the real-time update of positioning information.
[0114] In some scenarios, the communication terminal 100 may be located near the grid boundary. Due to positioning errors in the Global Navigation Satellite System, the communication terminal 100 may be physically located in the central grid cell 440, but is determined to be in an adjacent grid cell 450 based on the positioning results. This grid cell determination error may cause the communication terminal 100 to request communication resources based on the frequency band resource group and time slot resources mapped from the adjacent grid cell 450.
[0115] When communication terminal 100 requests resources based on frequency band resource groups and time slot resources mapped from adjacent grid cells 450 without causing time slot resource overlap, communication terminal 100 continues to send location information and heartbeat signals based on the requested authorized time slot resources. If resource requests result in multiple communication terminals requesting or occupying the same time slot resource, processor module 110 detects time slot resource conflicts through heartbeat signals and executes the time slot resource conflict arbitration process 800. Conflict detection and arbitration based on heartbeat signals can suppress continuous communication conflicts caused by positioning errors near grid boundaries.
[0116] In some embodiments, the processor module 110 determines the risk of communication conflicts near the grid boundary based on a preset communication range 480, the actual communication distance of the communication terminal 100, and the positioning error. For example, when the difference between the preset communication range 480 and the actual communication distance is greater than a preset multiple of the positioning error, the processor module 110 can maintain the currently authorized time slot resources; the preset multiple can be 4.
[0117] In other embodiments, the processor module 110 smooths the grid cell judgment results based on historical positioning information, adjacent time-time positioning information, signal quality, or grid boundary distance. This smoothing of the grid cell judgment results can reduce the number of times the communication terminal 100 needs to re-apply for time slot resources when frequently switching between adjacent grid cells.
[0118] Based on the confirmation and use of time slot resources by the communication terminal 100, the communication terminal 100 can also join, leave or work across network groups through the node management mechanism.
[0119] Communication terminal 100 joins the decentralized peer-to-peer network 300 via a proximity node confirmation method. The proximity node confirmation method is suitable for scenarios where communication terminal 100 is within the communication reach range of at least one communication terminal in an existing network group.
[0120] When the first communication terminal 310 is powered on, the processor module 110 reads the network status information from the storage module 140. If the processor module 110 determines that the first communication terminal 310 is not in any network group, the processor module 110 controls the communication module 130 to periodically send network access requests at preset intervals t within a preset time range T1. The network access request includes the communication terminal identifier or unique address of the first communication terminal 310. Communication terminals within the communication reach range receive the network access request.
[0121] In the first network access scenario, a second communication terminal 320 already in the network group exists within the communication reach range. The second communication terminal 320 receives the network access request sent by the first communication terminal 310. The second communication terminal 320 outputs network access confirmation information through the human-machine interface module 150. If the second communication terminal 320 confirms that the first communication terminal 310 is allowed to join the target network group, then both the first and second communication terminals 310 perform point-to-point security information verification through the human-machine interface module 150. Security information verification may include verification code comparison, key verification, user verification, proximity verification, or a combination of multiple security information verification methods.
[0122] After successful security information verification, the second communication terminal 320 synchronizes the network key, network address, network node information, and communication terminal identifiers of each communication terminal within the network to the first communication terminal 310. The network node information may include at least one of the following: the communication terminal identifier, network address, network status, or resource occupancy status of the communication terminal within the network group. The first communication terminal 310 stores the received network key, network address, and network node information of the target network group in the storage module 140. The second communication terminal 320 marks the first communication terminal 310 as a newly joined node in the storage module 140. When other communication terminals in the network group are in a reachable state, the second communication terminal 320 sends the node information of the first communication terminal 310 to other communication terminals to update the network node information. After the node information update is complete, the second communication terminal 320 clears the newly joined node mark of the first communication terminal 310.
[0123] If the point-to-point security information verification fails, or if a communication terminal within the network group within the communication reach range does not confirm that the first communication terminal 310 has joined the network group, then the first communication terminal 310 is refused to join the network after a timeout T2. If the first communication terminal 310 fails to join the network group within a preset time range T1, the processor module 110 stops sending network access requests. The first communication terminal 310 will resend the network access request after power-on or upon receiving a re-application instruction.
[0124] In the second network access scenario, at least one unconnected communication terminal exists within the communication reach range. The third communication terminal 330 receives the network access request sent by the first communication terminal 310 and confirms the establishment of a new network group with the first communication terminal 310. The first communication terminal 310 and the third communication terminal 330 perform point-to-point security information verification through their respective human-machine interface modules 150. After successful security information verification, the third communication terminal 330 generates a network key and synchronizes it with the first communication terminal 310. The first communication terminal 310 and the third communication terminal 330 respectively store the network key, network address, and node information in their respective storage modules 140, thereby forming a new network group.
[0125] In the third network access scenario, if there are no other communication terminals within the communication reach range, or if no network access permission response is received within the preset time range T1, the processor module 110 stops sending network access requests. Stopping the sending of network access requests reduces the possibility of non-network-accessible communication terminals continuously occupying communication resources when there are no networks available to join.
[0126] The communication terminal 100 remotely joins the network by sharing a network key. Remote network joining is applicable to scenarios where the communication terminal 100 is temporarily outside the communication coverage of an existing network group, but the inviting party has already provided the network key and network address.
[0127] During the remote network access process, the invited communication terminal receives the network key and network address through the human-machine interaction module 150. The processor module 110 stores the network key and network address in the storage module 140 and marks the invited communication terminal as a new node in the target network group.
[0128] After the invited communication terminal is powered on, the communication module 130 sends broadcast information containing the network key and network address according to a preset period t2 until at least one communication terminal in the network group receives the broadcast information. The communication terminal that receives the broadcast information sends the node address information within the network group to the invited communication terminal point-to-point. After receiving the network node information, the invited communication terminal sends its own node information point-to-point to other communication terminals in the network group to update the network node information. A newly joined node marker is used to indicate that the node information has not yet been synchronized. After the node information update is complete, the processor module 110 clears the newly joined node marker from the storage module 140.
[0129] By remotely joining the network, the communication terminal 100 can join the network group after obtaining the network key and network address in advance, without requiring the invited communication terminal to be within the communication coverage of an existing network group before joining the network.
[0130] Communication terminal 100 performs a free-disconnection. Free-disconnection is used by communication terminal 100 to actively leave the target network group. In response to the disconnection command received by human-machine interface module 150, processor module 110 deletes the network key, network address, and network node information associated with the target network group from storage module 140. After deletion, communication terminal 100 no longer sends or parses location information based on the target network group's network key. Deleting the target network group's network key, network address, and network node information reduces the information risk of communication terminal 100 remaining exposed to the target network group.
[0131] Communication terminal 100 performs passive disconnection. Passive disconnection is used to remove a communication terminal within a network group based on security management needs. Communication terminals in the network group select the communication terminal identifier of the node to be deleted through the human-machine interface module 150. The processor module 110 generates node deletion information based on the node deletion operation and sends the node deletion information to at least one other communication terminal in the network group through the communication module 130. The communication terminal receiving the node deletion information updates the network node information in the storage module 140. Upon receiving the node deletion information, the communication terminal identified by the deleted communication terminal identifier deletes the target network group's network key, network address, and node information, or stops using the target network group's network key to send and parse location information.
[0132] When communication terminal 100 actively leaves the target network group or is removed from the target network group, processor module 110 releases the authorized time slot resources occupied by communication terminal 100 in the target network group. Other communication terminals mark the released authorized time slot resources as idle time slot resources through heartbeat timeout detection.
[0133] The communication terminal 100 can store at least one set of network keys. The network keys are used to distinguish network groups and to encrypt or decrypt location information, status information, or network management information. Each set of network keys is associated with a network group. Communication terminals within the same network group encrypt or decrypt relevant information based on the network key associated with the network group; communication terminals that do not possess the network key of the target network group, even if they receive relevant wireless signals, will find it difficult to parse the data content of the target network group.
[0134] In some embodiments, communication terminals within the same network group broadcast their own information and receive information from other communication terminals within the same network group. Network keys constrain information parsing between different network groups, preventing communication terminals that do not possess the network key of the target network group from parsing data content carrying or processed by the network key, while not hindering the reception of heartbeat signals from different network groups.
[0135] A single communication terminal 100 can store multiple sets of network keys and join multiple different network groups. The processor module 110 can determine authorized time slot resources for different network groups and encrypt the data to be sent based on the network key associated with the network group. If the communication terminal 100 needs to send location information in different network groups, the processor module 110 can apply for communication resources for different network groups separately, or send data content belonging to one network group in an authorized time slot.
[0136] In a cross-network group operation mode, the communication terminal 100 maintains transmission tasks for multiple network groups according to a task queue. Each transmission task includes a network group identifier, a network key, authorized time slot resources, data to be transmitted, and a transmission period. The processor module 110 schedules multiple transmission tasks based on the time slot reference and the time slot location of each authorized time slot resource. Thus, the communication terminal 100 can send or receive location information in multiple network groups while maintaining data isolation between different network groups through the network key.
[0137] Figure 10 This illustrates the periodic location mutual sensing process of multiple communication terminals 100 within the same network group. For example... Figure 10 As shown, the first communication terminal 310 can send location information POS_A, the second communication terminal 320 can send location information POS_B, and the third communication terminal 330 can send location information POS_C.
[0138] The first communication terminal 310, the second communication terminal 320, and the third communication terminal 330 respectively receive positioning information sent by other communication terminals, and generate relative position information 940 based on their own positioning information and the received positioning information.
[0139] In some embodiments, the communication terminal 100 broadcasts its own location information according to a period t3 and receives location information sent by other communication terminals within the same network group. The processor module 110 can perform relative position calculation based on its own location information and the received location information of other communication terminals according to a period t3 / 2 or other preset calculation period. The relative position calculation may include distance calculation, bearing calculation, heading calculation, or navigation prompt generation.
[0140] The communication terminal generates relative position information 940 based on its own positioning information and the positioning information received from other communication terminals. The relative position information 940 may include at least one of orientation information 950, distance information 960, and navigation prompt information 970. The human-machine interaction module 150 outputs display information 980. The display information 980 may include distance, direction, relative orientation, prompt arrows, text prompts, or other navigation information relative to other communication terminals.
[0141] pass Figure 10 The illustrated periodic location sensing process allows the communication terminal to periodically send and receive location information based on authorized time slot resources within the decentralized peer-to-peer network 300, and generate display information for location sensing based on this information. After network setup is complete, the communication terminal 100 can automatically update location information and display relative positions, reducing the configuration operations required from the user during operation.
[0142] Figure 11 This diagram illustrates emergency communication resources and emergency message forwarding as provided in some embodiments of this application. Figure 11 As shown, time slice 620 includes emergency communication time slot 630. Emergency communication time slot 630 can be mapped to slot 0. Emergency communication time slot 630 is used to send emergency messages (EMG).
[0143] The first communication terminal 310 sends an emergency message in emergency communication time slot 630. The second communication terminal 320 receives the emergency message. The second communication terminal 320 forwards the emergency message in its own authorized time slot resources. The third communication terminal 330 receives the emergency message forwarded by the second communication terminal 320.
[0144] At least one communication terminal that receives an emergency message may forward the emergency message. The communication terminal may determine whether to forward the emergency message based on its authorized time slot resources, remaining battery power, signal quality, network key matching status, or a preset forwarding strategy.
[0145] Emergency communication slot 630 can bypass the normal slot resource request process. After detecting an emergency event, communication terminal 100 can send a predefined emergency message in emergency communication slot 630. The predefined emergency message may include at least one of the following: communication terminal identifier, network group identifier, location information, emergency status type, time information, or forwarding control information.
[0146] In relay mode, communication terminal 100 can request authorized time slot resources to forward data from other communication terminals. The relay communication terminal can forward data without parsing the content of the data being forwarded, but based on forwarding control information, network group identifiers, routing identifiers, or forwarding tags. Through relay mode, location information or emergency messages can be relayed among multiple communication terminals, thereby expanding communication coverage. The method of relay communication terminals not parsing data content can be used in conjunction with network key mechanisms to reduce the risk of data exposure during relay.
[0147] Through emergency communication resources and relay forwarding mechanisms, the communication terminal 100 can improve the reliability of message transmission by pre-setting emergency communication time slots 630 and authorized time slot resources when an emergency occurs or the direct communication distance is insufficient.
[0148] The communication terminal 100 is suitable for short-range location sensing scenarios where fixed communication infrastructure is lacking or access to public communication networks is inconvenient, such as scenarios involving personnel gathering, outdoor activities, emergency rescue, park management, vehicle coordination, or temporary pick-up. For example, the first communication terminal 310 and the second communication terminal 320 are carried by different users. After completing the network setup, they periodically send their own location information and generate relative location information 940 based on the received location information. The human-computer interaction module 150 can display distance information 960, orientation information 950, or navigation prompts 970.
[0149] In some embodiments, the communication terminal 100 includes the following optional hardware configurations. These optional hardware configurations are used to illustrate engineering implementation examples of the communication terminal 100 and do not change the working mechanism of the processor module 110 in performing location information transmission and reception based on a time slot reference, pre-selected time slot resources, heartbeat signals, and authorized time slot resources.
[0150] In some embodiments, the communication module 130 includes a radio frequency transceiver module operating in industrial, scientific, and medical frequency bands. The communication module 130 uses at least one frequency point resource in the industrial, scientific, and medical frequency bands to transmit and receive wireless signals. When using a radio frequency transceiver module in the industrial, scientific, and medical frequency bands, the communication terminal 100 can transmit location information between communication terminals without accessing a cellular base station or wireless local area network access point. In other embodiments, the communication module 130 employs other wireless communication modules capable of supporting peer-to-peer communication.
[0151] In some embodiments, the communication module 130 employs an E01-ML01SP2 RF transceiver module, the global navigation satellite system module 120 employs an E108-GN03D positioning module, the processor module 110 employs a 32-bit microcontroller based on an ARM Cortex-M3 core, the storage module 140 employs on-chip Flash or other non-volatile memory, the human-machine interface module 150 employs an organic light-emitting diode (OLED) display module and physical buttons, and the power supply module 160 includes a rechargeable lithium-ion battery, power management circuitry, and a switch. Engineering implementation examples can be used in combination with other processor modules, positioning modules, memory, human-machine interface modules, or power supply structures.
[0152] In some embodiments, the communication module 130 employs a radio frequency transceiver module, enabling the communication terminal 100 to have a communication distance of approximately 1.8 kilometers (km) under ideal conditions. The communication distance of approximately 1.8 km is an exemplary engineering parameter, and the actual communication distance of the communication terminal 100 may vary depending on transmit power, antenna gain, terrain obstruction, environmental noise, communication frequency band, modulation method, or receiver sensitivity.
[0153] In some embodiments, the global navigation satellite system module 120 integrates a ceramic antenna, which can also be connected to an external positioning receiving antenna 122. The implementation of the integrated ceramic antenna reduces the structural complexity of the communication terminal 100; the implementation of the external positioning receiving antenna 122 improves installation flexibility or receiving performance.
[0154] In some embodiments, the human-computer interaction module 150 includes an OLED display module and physical buttons. The OLED display module is used to display network group information, positioning status, relative position information 940, distance information 960, orientation information 950, navigation prompts 970, or security confirmation information. The physical buttons are used to input commands for network confirmation, network disconnection confirmation, node deletion confirmation, network key confirmation, or emergency message triggering. In other embodiments, the human-computer interaction module 150 uses a small touchscreen to simultaneously realize display and input functions.
[0155] In some embodiments, the power supply module 160 includes a rechargeable lithium-ion battery, a charging management module, and a DIP switch. The rechargeable lithium-ion battery supplies power to the communication terminal 100. The charging management module manages the charging status of the battery. The DIP switch controls the power-on, power-off, or switching of preset operating modes of the communication terminal 100. Engineering implementation examples can be adjusted according to communication distance, installation space, power supply conditions, and interaction methods.
[0156] Figure 12Block diagrams illustrating the structure of a computing device provided for some embodiments of this application. For example... Figure 12 As shown, the computing device 1000 includes a processor 1010, a memory 1020, a communication interface 1030, and an input / output interface 1040. The processor 1010, memory 1020, communication interface 1030, and input / output interface 1040 can communicate via a bus or data connection.
[0157] The memory 1020 stores the computer program. When the processor 1010 executes the computer program, it can achieve... Figure 3 The communication method shown Figure 8 The time slot resource application process shown Figure 9 The process includes at least one of the following: time slot resource conflict arbitration process, free network access process, remote network access process, free network exit process, passive network exit process, network key management process, cross-network group scheduling process, dynamic adjustment of time slice quantity process, emergency message forwarding process, or relay forwarding process.
[0158] This application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When executed by a processor, the computer program implements the communication method in any embodiment of this application.
[0159] Computer-readable storage media may include non-volatile storage media. Non-volatile storage media may include read-only memory, flash memory, solid-state drive, magnetic disk, optical disk, or other media capable of storing computer programs.
Claims
1. A communication terminal, characterized in that, include: Processor module; A global navigation satellite system module is connected to the processor module and configured to output second pulse signals and navigation data messages; A communication module, connected to the processor module, is configured to communicate wirelessly with other communication terminals; as well as A storage module, connected to the processor module, is configured to store the mapping relationship between the grid cells and communication resources; The processor module is configured as follows: The location and time information of the communication terminal are obtained based on the navigation data message; A time-slot reference for a decentralized peer-to-peer network is established based on the second pulse signal and the time information. The grid cell where the communication terminal is located is determined based on the location information; Based on the mapping relationship, the pre-selected time slot resources corresponding to the grid cell are determined without the need for the central communication terminal to allocate communication resources; The communication module sends a heartbeat signal, which includes information about the pre-selected time slot resources and the application status. Based on the heartbeat signals received from other communication terminals, detect whether there is a communication conflict for the preselected time slot resource; If no communication conflict is detected, the preselected time slot resource is determined as the authorized time slot resource; and Based on the authorized time slot resources, the communication terminal sends its location information and receives location information sent by other communication terminals.
2. The communication terminal according to claim 1, characterized in that, The grid unit includes a basic grid unit, a first-level grid unit, and a second-level grid unit; The basic grid unit includes multiple first-level grid units; The primary grid unit includes multiple secondary grid units; The processor module is configured to determine the primary grid cell and the secondary grid cell where the communication terminal is located based on the location information.
3. The communication terminal according to claim 2, characterized in that, The communication resources include frequency band resource groups and time slot resources; The processor module is configured to determine the frequency band resource group based on the primary grid cell where the communication terminal is located, and to determine the time slot resource based on the secondary grid cell where the communication terminal is located.
4. The communication terminal according to claim 3, characterized in that, The secondary grid unit includes a central grid unit, adjacent grid units, and reused grid units; The processor module is configured to determine the time slot resources mapped by the central grid cell as candidate time slot resources; If the reused grid cell and the central grid cell meet the preset reuse conditions, the processor module is further configured to determine the time slot resources mapped by the reused grid cell as candidate time slot resources.
5. The communication terminal according to claim 1, characterized in that, The heartbeat signal also includes at least one of the following: communication terminal identifier, information on authorized time slot resources, duration of currently occupied time slot resources, communication conflict status, and conflict release object identifier; The processor module is configured to detect whether multiple communication terminals are applying for or occupying the same time slot resource based on the time slot resource information and application status in the heartbeat signal.
6. The communication terminal according to claim 5, characterized in that, When multiple communication terminals are detected to be requesting or occupying the same time slot resource, the processor module is configured to compare the current time slot resource occupation duration of the communication terminals that are experiencing communication conflicts, and determine the conflict release object identifier based on the comparison result; The processor module is also configured to send a heartbeat signal carrying the communication conflict status and the conflict release object identifier via the communication module.
7. The communication terminal according to claim 1, characterized in that, The processor module is configured to determine multiple idle time slot resources based on the received heartbeat signal, and to select at least one pre-selected time slot resource from the multiple idle time slot resources for application. If one of the at least one preselected time slot resources is determined to be the authorized time slot resource, the processor module updates the application status of the preselected time slot resource that was not determined to be the authorized time slot resource to "application completed". If all at least one preselected time slot resource is detected to have a communication conflict, the processor module updates the application status of the at least one preselected time slot resource to "application completed" and re-determines the preselected time slot resource.
8. The communication terminal according to claim 1, characterized in that, The communication resources have a time-domain structure; The time-domain structure includes a data update cycle; The data update cycle includes at least one time slice; The time slice includes an emergency communication time slot and multiple normal communication time slots; The normal communication time slot includes a first protection interval, a service information transmission interval, a heartbeat signal transmission interval, and a second protection interval. The processor module is configured to send the location information and the heartbeat signal in the normal communication time slot corresponding to the authorized time slot resource; The processor module is configured to increase the number of time slices within the data update cycle when the number of idle time slot resources is lower than a first threshold. The processor module is also configured to reduce the number of time slices in the data update cycle when the number of idle time slot resources is higher than a second threshold and the normal communication time slots in the time slice to be reduced do not carry authorized time slot resources.
9. The communication terminal according to claim 8, characterized in that, The processor module is configured to send an emergency message through the emergency communication time slot; The processor module is also configured to forward the emergency message based on the authorized time slot resources when it receives an emergency message sent by another communication terminal through the communication module.
10. The communication terminal according to claim 1, characterized in that, The storage module is configured to store at least one set of network keys; Different network keys correspond to different network groups; The processor module is configured to encrypt or decrypt the location information based on the corresponding network key, determine authorized time slot resources for different network groups, and send the location information of the corresponding network group based on the corresponding authorized time slot resources.
