Method and apparatus for positioning
By receiving and analyzing signals from multiple anchor nodes in a wireless communication system to perform distance and angle of arrival measurements, the problem of poor positioning in existing wireless communication networks is solved, achieving higher-precision positioning results.
Patent Information
- Application Number
- CN202080057806.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-08-20
- Filing Date
- 2020-08-24
- Publication Date
- 2025-10-24
- Estimated Expiration
- 2040-08-24
AI Technical Summary
Cell-based positioning in existing wireless communication networks is not effective.
By receiving signals from multiple anchor nodes in a wireless communication system, distance and angle of arrival measurements are performed to determine whether the anchor nodes are in line of sight, and positioning is performed based on this.
It enables more accurate cell-based positioning in wireless communication networks, improving positioning accuracy and efficiency.
Smart Images

Figure CN114729982B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates generally to localization in a wireless communication system. In particular, a method and apparatus for cell-based localization in a wireless communication system are proposed. BACKGROUND
[0002] To meet the demand for wireless data traffic having increased since deployment of 4G communication systems, efforts have been made to develop an improved 5G or pre-5G communication system. Therefore, the 5G or pre-5G communication system is also called a 'Beyond 4G Network' or a '5G Network'. The 5G communication system is considered to be implemented in higher frequency (mmWave) bands, e.g., 60GHz bands, so as to accomplish higher data rates. To decrease propagation loss of the radio waves and increase the transmission distance, the beamforming, massive multiple-input multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, an analog beam forming, large scale antenna techniques are discussed for use in the 5G communication system. In addition, in the 5G communication system, development for system network improvement is under way based on advanced small cells, cloud radio access networks (RANs), ultra-dense networks, a technology for coordination between cells, a cooperative multi-cell transmission technique, a cooperative multi-base station (BS) transmission technique, an interference mitigation / suppression technology, a network slicing technology and the like. In the 5G system, hybrid FSK and QAM modulation (FQAM) and sliding window superposition coding (SWSC) as an advanced coding modulation (ACM), and filter bank multi carrier (FBMC), a non-orthogonal multiple access (NOMA), and a sparse code multiple access (SCMA) as an advanced access technology have been developed.
[0003] The Internet, which is a human centered connectivity network where humans generate and consume information, is now evolving to the Internet of Things (IoT) where distributed entities, such as things, exchange and process information without human intervention. The Internet of Everything (IoE), which is a combination of the IoT technology and the Big Data processing technology through connection with a cloud server, has emerged as a new paradigm for the IoT. As technology elements, such as "sensing technology", "wired / wireless communication and network infrastructure", "service interface technology", and "security technology" have been demanded for IoT implementation, a sensor network, a Machine-to-Machine (M2M) communication, Machine Type Communication (MTC), and the like have been researched. Such an IoT environment can provide intelligent Internet technology services that create a new value through collection and analysis of data generated from connected things. The IoT can be applied to a variety of fields including smart home, smart building, smart city, smart car or connected cars, smart grid, health care, smart appliances, and advanced medical services through convergence and combination between existing information technology (IT) and various industrial applications.
[0004] In line with this, various attempts have been made to apply 5G communication systems to IoT networks. For example, technologies such as a sensor network, Machine Type Communication (MTC), and Machine-to-Machine (M2M) communication can be implemented by beamforming, MIMO, and array antennas. Application of a cellular network to a M2M network, a MTC network, or a sensor network can also be considered as an example of convergence of the 5G technology with the IoT technology.
[0005] A Peer Aware Communication (PAC) network is a fully distributed communication network that allows direct communication between PAC devices (PDs). The PAC network can use several topologies similar to mesh, star, etc. to support interaction between PDs for various services. SUMMARY
[0006] TECHNICAL PROBLEM
[0007] According to the prior art, cell-based positioning in a wireless communication network cannot be effectively performed.
[0008] TECHNICAL SOLUTION
[0009] Embodiments of the disclosure provide a method and apparatus for cell-based positioning in a wireless communication network.
[0010] In one embodiment, an electronic device for performing positioning in a wireless communication system is provided. The electronic device includes a transceiver configured to receive signals for positioning from a plurality of anchor nodes. The electronic device further includes a processor operably connected to the transceiver, the processor configured to perform a ranging measurement on the signals based on a range and an angle of arrival (AoA) of the signals, determine whether at least one anchor node of the plurality of anchor nodes is not detected based on the ranging measurement, determine whether at least one other anchor node of the plurality of anchor nodes is located in a line of sight (LOS) of the electronic device according to a determination that the at least one anchor node is not detected based on the ranging measurement, wherein the LOS is determined based on the AoA of the signals, and perform the positioning based on the at least one other anchor node.
[0011] In another embodiment, a method for performing positioning in a wireless communication system by an electronic device is provided. The method includes receiving signals for positioning from a plurality of anchor nodes, performing a ranging measurement on the signals based on a range and an angle of arrival (AoA) of the signals, determining whether at least one anchor node of the plurality of anchor nodes is not detected based on the ranging measurement, determining whether at least one other anchor node of the plurality of anchor nodes is located in a line of sight (LOS) of the electronic device according to a determination that the at least one anchor node is not detected based on the ranging measurement, wherein the LOS is determined based on the AoA of the signals, and performing the positioning based on the at least one other anchor node.
[0012] Other technical features can be readily apparent to one skilled in the art from the following figures, descriptions, and claims.
[0013] Before undertaking the detailed description below, it can be advantageous to set forth definitions of certain terms and phrases used throughout this patent document. The term "couple" and its derivatives refer to any direct or indirect communication between two or more elements, regardless of the nature of the The terms "transmit," "receive," and "communicate," and derivatives thereof, encompass both direct and indirect communication. The terms "include" and "comprise," as well as derivatives thereof, mean inclusion without limitation. The term "or" is inclusive, meaning and / or. The phrase "associated with," as well as derivatives thereof, means to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, be proximate to, be bound to or with, have a property of, have relations with, have roles with, or the like. The term "controller" means any device, system or part thereof that controls at least one operation. Such a controller can be implemented in hardware or a combination of hardware and software and / or firmware. The functionality associated with any particular controller can be centralized or distributed, whether locally or remotely. The phrase "at least one of" followed by a list of two or more items, means that any of the listed items can be employed by itself, or in combination with one or more of the listed items. For example, "at least one of A and B" is satisfied by: A; B; or A and B.
[0014] Moreover, various functions described below can be implemented or supported by one or more computer programs, each of which is formed from computer readable program code. The terms "application" and "program" refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or a portion thereof, that are adapted for implementation in a suitable computer readable program code. The phrase "computer readable program code" includes any type of computer code, including source code, object code, and executable code. The phrase "computer readable medium" includes any type of media capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a compact disc (CD), a digital video disc (DVD), or any other type of memory. A "non-transitory" computer readable medium excludes wired, wireless, optical, or other communication links. Non-transitory computer readable media include media where data is permanently stored and media where data is stored and later overwritten, such as a rewritable optical disc or an erasable memory device.
[0015] Definitions for other certain words and phrases are provided throughout this patent document. Those of ordinary skill in the art should understand that in many if not most instances, such definitions apply to prior as well as future uses of such defined words and phrases.
[0016] Advantages
[0017] Embodiments of the disclosure provide methods and apparatuses for cell-based positioning in a wireless communication network. BRIEF DESCRIPTION OF DRAWINGS
[0018] For a more complete understanding of the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings in which like parts are marked with like numerals:
[0019] FIG. 1 An example wireless network is illustrated in accordance with an embodiment of the present disclosure;
[0020] FIG. 2 An example gNB is illustrated in accordance with an embodiment of the present disclosure;
[0021] FIG. 3 An example UE is illustrated in accordance with an embodiment of the present disclosure;
[0022] FIG. 4A A high-level diagram of an orthogonal frequency division multiple access transmit path is shown in accordance with an embodiment of the present disclosure;
[0023] FIG. 4B A high-level diagram of an orthogonal frequency division multiple access receive path is shown in accordance with an embodiment of the present disclosure;
[0024] FIG. 5 An example electronic device is shown in accordance with an embodiment of the disclosure;
[0025] FIG. 6 An example one-sided two-way ranging is shown in accordance with an embodiment of the disclosure;
[0026] FIG. 7 An example two-sided two-way ranging utilizing three messages is shown in accordance with an embodiment of the disclosure;
[0027] FIG. 8 An example localization of a marker based on distance measurements from anchor points is shown in accordance with an embodiment of the disclosure;
[0028] FIG. 9 An example of two localization engine frameworks is shown in accordance with an embodiment of the disclosure;
[0029] FIG. 10 An example localization engine architecture is shown in accordance with an embodiment of the disclosure;
[0030] FIG. 11 An example of constructing a state transition graph from an environment is shown in accordance with an embodiment of the disclosure;
[0031] FIG. 12 An example of constructing a connectivity graph from a grid world for a 2D scene is shown in accordance with an embodiment of the disclosure;
[0032] FIG. 13 An example of constructing a connectivity graph from a grid world for a 2D scene for vehicle access is shown in accordance with an embodiment of the disclosure;
[0033] FIG. 14 An example of a target state graph (scheme 2) for capturing information about a heading of a target is shown in accordance with an embodiment of the disclosure;
[0034] FIG. 15 An example of constructing a target state graph from a connectivity graph is shown in accordance with an embodiment of the disclosure;
[0035] FIG. 16 An example localization engine is shown in accordance with an embodiment of the disclosure;
[0036] FIG. 17 An example of computing state likelihoods is shown in accordance with an embodiment of the disclosure;
[0037] FIG. 18 An example EKF model is shown in accordance with an embodiment of the disclosure;
[0038] FIG. 19 An example of M parallel EKF with multiple dynamic mixture models is shown in accordance with an embodiment of the disclosure;
[0039] FIG. 20 An example Markov chain for model switching is shown in accordance with embodiments of the present disclosure;
[0040] FIG. 21 An example of utilizing a mixture of two EKF models is shown in accordance with embodiments of the present disclosure;
[0041] FIG. 22A An example of static anchor point selection is shown in accordance with embodiments of the present disclosure;
[0042] FIG. 22B An example of dynamic anchor point selection is shown in accordance with embodiments of the present disclosure;
[0043] FIG. 23 An example of an adaptive anchor point selection process is shown in accordance with embodiments of the present disclosure;
[0044] FIG. 24 An example of an adaptive anchor point selection system is shown in accordance with embodiments of the present disclosure;
[0045] FIG. 25 An example of global and local anchor point selection is shown in accordance with embodiments of the present disclosure;
[0046] FIG. 26 An example of a schematic diagram of a positioning sequence and energy consumption model per ranging interval is shown in accordance with embodiments of the present disclosure;
[0047] FIG. 27 An example of transitioning between positioning modes based on distance is shown in accordance with embodiments of the present disclosure;
[0048] FIG. 28 A flowchart of a method for determining a distance threshold for changing a positioning mode is shown in accordance with embodiments of the present disclosure;
[0049] FIG. 29 An example of incorporating confidence in distance and AoA measurements in a positioning and tracking system is shown in accordance with embodiments of the present disclosure;
[0050] FIG. 30 A flowchart of a method for obtaining a weighting coefficient from a FoM indicated by a CIR peak by normalizing with a maximum value is shown in accordance with embodiments of the present disclosure;
[0051] FIG. 31 A flowchart of a method for obtaining a weighting coefficient from a FoM indicated by a CIR peak by a weighted average of a function of the FoM is shown in accordance with embodiments of the present disclosure;
[0052] FIG. 32A flowchart showing a method for obtaining a weighting coefficient from a FoM indicated by a CIR peak by a weighted average with memory according to embodiments of the disclosure is shown;
[0053] FIG. 33 An example of FoM computation of delay spread estimate with first peak and highest peak according to embodiments of the disclosure is shown;
[0054] FIG. 34 An example of obtaining distance measurement bias or error statistics using CIR according to embodiments of the disclosure is shown;
[0055] FIG. 35 An example of mapping function between FoM and variance of distance measurement error according to embodiments of the disclosure is shown;
[0056] FIG. 36 An example of graphical representation of positioning with modified extended Kalman filter according to embodiments of the disclosure is shown;
[0057] FIG. 37 An example of distance measurement of a positioning and tracking system when partial measurements are missing according to embodiments of the disclosure is shown;
[0058] FIG. 38 A flowchart showing a method for extended Kalman filter when partial measurements are missing according to embodiments of the disclosure is shown;
[0059] FIG. 39 A flowchart showing a method for extended Kalman filter step (with distance measurements and AoA) according to embodiments of the disclosure is shown;
[0060] FIG. 40 A flowchart showing a method for computing Jacobian matrix considering distance measurements and AoA for positioning with extended Kalman filter according to embodiments of the disclosure is shown;
[0061] FIG. 41 A flowchart showing a method for computing innovation considering partial measurements missing in distance measurements and AoA for positioning with extended Kalman filter according to embodiments of the disclosure is shown; and
[0062] FIG. 42 A flowchart showing a method for cell-based positioning according to embodiments of the disclosure is shown. DETAILED DESCRIPTION
[0063] The following discussion FIGS. 1-42The principles of the disclosure described in this patent document can be implemented in any of a variety of systems or devices. One or more aspects of the disclosure can be implemented in any of a variety of systems or devices such as, for example, wireless communication devices, access points, radio equipment, base stations, network equipment, or other devices.
[0064] Aspects, features and advantages of the disclosure will be readily understood by persons of ordinary skill in the art from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the disclosure. The disclosure can be implemented in other ways, and various embodiments can be modified in various obvious aspects, without departing from the spirit and scope of the disclosure. Therefore, the drawings and description are to be regarded as illustrative in nature, and not restrictive. The disclosure is shown in the drawings by way of example, not by way of limitation.
[0065] The following detailed description FIGS. 1-4B Various embodiments are described that are implemented in a wireless communication system and utilize Orthogonal Frequency Division Multiplexing (OFDM) or Orthogonal Frequency Division Multiple Access (OFDMA) communication techniques. FIGS. 1-3 The description of the various embodiments of the disclosure is not intended to suggest that physical or architectural limitations are present in the manner in which different embodiments of the disclosure can be implemented. Different embodiments of the disclosure can be implemented in any of a variety of suitably arranged communication systems.
[0066] FIG. 1 An example wireless network according to embodiments of the disclosure is illustrated. FIG. 1 The illustrated embodiment of the wireless network is for illustration only. Other embodiments of the wireless network 100 could be used without departing from the scope of the disclosure.
[0067] As FIG. 1 The wireless network includes a gNB 101 (e.g., base station (BS)), a gNB 102, and a gNB 103, as shown. The gNB 101 communicates with the gNB 102 and the gNB 103. The gNB 101 also communicates with at least one network 130, such as the Internet, a proprietary Internet Protocol (IP) network, or other data network.
[0068] The gNBs 102 provides wireless broadband access to the network 130 for a first plurality of user equipment units (UEs) within a coverage area 120 of the gNB 102. The first plurality of UEs includes a UE 111, which can be located in a small business; a UE 112, which can be located in an enterprise (E); a UE 113, which can be located in a WiFi hotspot (HS); a UE 114, which can be located in a first residence (R); a UE 115, which can be located in a second residence (R); and a UE 116, which can be a mobile device, such as a cell phone, a wireless laptop, a wireless PDA, or the like. The gNB 103 provides wireless broadband access to the network 130 for a second plurality of UEs within a coverage area 125 of the gNB 103. The second plurality of UEs includes the UE 115 and the UE 116. In some embodiments, one or more of the gNBs 101-103 can communicate with each other and with the UEs 111-116 using 5G, LTE, LTE-A, WiMAX, WiFi, or other wireless communication protocols.
[0069] Depending on the network type, the term "base station" or "BS" can refer to any component (or collection of components) configured to provide wireless access to a network, such as a transmit point (TP), transmit-receive point (TRP), an enhanced base station (eNodeB or eNB), a 5G base station (gNB), a macrocell, a femtocell, a WiFi access point (AP), or other wirelessly enabled devices. Base stations can provide wireless access to a plurality of UEs according to one or more wireless communication protocols, such as 5G 3GPP New Radio Interface / Access (NR), Long-Term Evolution (LTE), LTE Advanced (LTE-A), High Speed Packet Access (HSPA), Wi-Fi 802.11a / b / g / n / ac, and so forth. To facilitate, the terms "BS" and "TRP" are used interchangeably herein to refer to a component (or collection of components) of a network that provides wireless access to remote terminals. Also, depending on the network type, the term "user equipment" or "UE" can refer to any component such as a "mobile station," "subscriber station," "remote terminal," "wireless terminal," "receive point," or "user device." To facilitate, the terms "user equipment" and "UE" are used interchangeably herein to refer to a remote wireless equipment that wirelessly accesses a BS, whether the UE is a mobile device (such as a mobile telephone or smartphone) or what is commonly referred to as a stationary device (such as a desktop computer or vending machine).
[0070] The dashed line shows the approximate extent of the coverage areas 120 and 125, which are shown as approximately circular for the purposes of illustration and explanation only. It should be clearly understood that the coverage areas associated with gNBs (e.g., the coverage area 120 and the coverage area 125) can have other shapes, including irregular shapes, depending on the configuration of the gNBs and changes in the radio environment associated with natural and man-made obstructions.
[0071] Although FIG. 1 various changes can be made to FIG. 1 wireless network. For example, the wireless network can include any number of gNBs and any number of UEs in any suitable arrangement. In addition, gNB 101 can communicate directly with any number of UEs and provide those UEs access to network 130. Similarly, each of gNBs 102-103 can communicate directly with network 130 and provide UEs access to network 130. Further, gNBs 101, 102, and / or 103 can provide access to other or additional external networks, such as external telephone networks or other types of data networks.
[0072] FIG. 2 An example gNB 102 according to embodiments of the present disclosure is illustrated. FIG. 2 The illustrated embodiment of gNB 102 is for illustration only, and FIG. 1 gNBs 101 and 103 can have the same or similar configuration. However, gNBs can have a variety of configurations depending on FIG. 2 the scope of the present disclosure is not limited to any particular implementation of a gNB.
[0073] As FIG. 2 illustrated, gNB 102 includes multiple antennas 205a-205n, multiple RF transceivers 210a-210n, transmit (TX) processing circuitry 215, and receive (RX) processing circuitry 220. gNB 102 also includes controller / processor 225, memory 230, and backhaul or network interface 235.
[0074] RF transceivers 210a-210n receive input RF signals (e.g., signals transmitted by UEs in network 100) from antennas 205a-205n. RF transceivers 210a-210n down-convert the input RF signals to generate IF or baseband signals. The IF or baseband signals are sent to RX processing circuitry 220, which generates processed baseband signals by filtering, amplifying, and / or digitizing the baseband or IF signals. RX processing circuitry 220 transmits the processed baseband signals to controller / processor 225 for further processing.
[0075] The TX processing circuitry 215 receives analog or digital data (such as voice data, web data, e-mail, or interactive video game data) from the controller / processor 225. The TX processing circuitry 215 encodes, multiplexes, and / or digitizes the outgoing baseband data to generate processed baseband or IF signals. The RF transceivers 210a-210n receive the outgoing processed baseband or IF signals from the TX processing circuitry 215 and up-convert the signals to RF signals for transmission on the
[0076] The controller / processor 225 can include one or more processors or other processing devices to manage the overall operation of the gNB 102. For example, the controller / processor 225 can control the reception of forward channel signals and the transmission of reverse channel signals by the RF transceivers 210a-210n, the RX processing circuitry 220, and the TX processing circuitry 215, in accordance with well-known principles. The controller / processor 225 can support additional functions as well, such as more advanced wireless communication functions.
[0077] For instance, the controller / processor 225 can support beamforming or directional routing operations in which outgoing signals from multiple antennas 205a-205n are weighted differently to effectively steer the outgoing signals in a desired direction. Any of a wide variety of other functions can be supported in the gNB 102 by the controller / processor 225.
[0078] The controller / processor 225 is also capable of executing programs and other processes resident in the memory 230, such as an OS. The controller / processor 225 can move data into or out of memory 230 as required by the processes executing under the OS.
[0079] The controller / processor 225 is also coupled to the backhaul or network interface 235. The backhaul or network interface 235 allows the gNB 102 to communicate with other devices or systems, for example, through a backhaul connection or through the network. This interface 235 can support communications with other gNBs using any suitable wired or wireless connection, such as a wireline or wireless backhaul connection. For example, when the gNB 102 is implemented as part of a cellular communication system (such as a 5G, LTE, or LTE-A cellular communication system), the interface 235 can allow the gNB 102 to communicate with other gNBs over a wireline or wireless backhaul connection. When the gNB 102 is implemented as an access point, the interface 235 can allow the gNB 102 to communicate with other gNBs over a wireline or wireless local area network or with a larger network (such as the Internet) through a wireline or wireless connection. The interface 235 includes any suitable hardware and / or software for enabling communications between the gNB 102 and other devices or systems over the backhaul connection or network. For example, the interface 235 can include an Ethernet or RF transceiver, as examples.
[0080] Memory 230 is coupled to controller / processor 225. A portion of memory 230 may include RAM, and another portion of memory 230 may include flash memory or other ROM.
[0081] although FIG. 2 An example of a gNB 102 is shown, but the FIG. 2 For example, gNB 102 may include any number of FIG. 2 As a specific example, the access point may include multiple interfaces 235, and the controller / processor 225 may support routing functionality for routing data between different network addresses. As another specific example, although shown as including a single instance of the TX processing circuitry 215 and a single instance of the RX processing circuitry 220, the gNB 102 may include multiple instances of either (e.g., one for each RF transceiver). FIG. 2 The components in the can be combined, further subdivided, or omitted, and additional components can be added based on specific needs.
[0082] FIG. 3 An example UE 116 is shown according to an embodiment of the present disclosure. FIG. 3 The embodiment of UE 116 shown is for illustration only, and FIG. 1 UEs 111 to 115 may have the same or similar configurations. However, there are many configurations of UEs, and FIG. 3 The scope of this disclosure is not limited to any particular implementation of a UE.
[0083] like FIG. 3 As shown, UE 116 includes an antenna 305, a radio frequency (RF) transceiver 310, a TX processing circuit 315, a microphone 320, and a receive (RX) processing circuit 325. UE 116 also includes a speaker 330, a processor 340, an input / output (I / O) interface (IF) 345, a touch screen 350, a display 355, and a memory 360. The memory 360 includes an operating system (OS) 361 and one or more applications 362.
[0084] RF transceiver 310 receives an incoming RF signal from antenna 305, transmitted by a gNB of network 100. RF transceiver 310 downconverts the incoming RF signal to generate an intermediate frequency (IF) or baseband signal. The IF or baseband signal is sent to RX processing circuitry 325, which generates a processed baseband signal by filtering, decoding, and / or digitizing the baseband or IF signal. RX processing circuitry 325 sends the processed baseband signal to speaker 330 (e.g., for voice data) or processor 340 (e.g., for web browsing data) for further processing.
[0085] The TX processing circuitry 315 receives analog or digital voice data from the microphones 320 or other outgoing baseband data (such as web data, e-mail, or interactive video game data) from the processor 340. The TX processing circuitry 315 encodes, multiplexes, and / or digitizes the outgoing baseband data to generate a processed baseband or IF signal. The RF transceiver 310 receives the outgoing processed baseband or IF signal from the TX processing circuitry 315 and up-converts it to RF frequencies indicated by the frequency spectrum used in the network deployment. The RF transceiver 310 then transmits the up-converted RF signal via the antennas 305.
[0086] The processor 340 can include one or more processors or other processing devices and execute a program or code in the memory 360 to control the overall operation of the UE 116 or to control the execution of specific applications on the UE 116. For example, the processor 340 can control reception of forward channel signals and / or transmission of reverse channel signals by the RF transceiver 310, the RX processing circuitry 325, and / or the TX processing circuitry 315 in accordance with well-known principles. In some embodiments, the processor 340 includes at least one microprocessor or microcontroller.
[0087] The processor 340 is also capable of executing other processes and programs stored in the memory 360. The processor 340 can move data into or out of the memory 360 as required by the processes executing on the processor 340. In some embodiments, the processor 340 is configured to execute the applications 362 based on the OS 361 or in response to signals received from gNBs or an operator. The processor 340 is also coupled to the I / O interface 345, which provides the UE 116 with the ability to connect to other devices such as laptop computers and handheld computers. The I / O interface 345 is the communication path between these accessories and the processor 340.
[0088] The processor 340 is also coupled to the touchscreen 350 and the display 355. The touchscreen 350 allows the operator of the UE 116 to enter data into the UE 116. The display 355 can be a liquid crystal display, light emitting diode display, or other display capable of rendering text and / or at least limited graphics from web sites for example.
[0089] The memory 360 is coupled to the processor 340. Portions of the memory 360 can include a random access memory (RAM) comprising a volatile memory unit and a read-only memory (ROM). The memory 360 can also include a permanent storage device, such as a flash memory, hard drive, or other storage device.
[0090] Although FIG. 3 One example of a UE 116 has been shown and described, various changes can be made to FIG. 3 For example, the FIG. 3The components in FIG. 10 can each be combined, further subdivided, or omitted and additional components can be added according to particular needs. As a particular example, the processor 340 can be divided into multiple processors, such as one or more central processing units (CPUs) and one or more graphics processing units (GPUs). Also, while FIG. 3 The UE 116 is illustrated as a mobile phone or smart phone, but a UE can be configured to operate as other types of mobile or stationary devices.
[0091] FIG. 4A is a high-level diagram of transmit path circuitry. The transmit path circuitry can be used to implement a transmitter that FIG. 4B is a high-level diagram of receive path circuitry. The receive path circuitry can be used to implement a receiver that FIG. 4A In FIGS. 10 and FIG. 4B for downlink communications, the transmit path circuitry can be implemented in a base station (gNB) 102 or a relay station, and the receive path circuitry can be implemented in a user equipment (e.g., the user equipment 116 of FIG. 1). In other examples, for uplink communications, the receive path circuitry 450 can be implemented in a base station (e.g., the gNB 102 of FIG. 1) or a relay station, and the transmit path circuitry can be implemented in a user equipment (e.g., the user equipment 116 of FIG. 1). FIG. 1 FIG. 1 FIG. 1
[0092] The transmit path circuitry includes channel coding and modulation block 405, serial-to-parallel (S-to-P) block 410, size N inverse fast Fourier transform (IFFT) block 415, parallel-to-serial (P-to-S) block 420, add cyclic prefix block 425, and up-converter (UC) 430. The receive path circuitry 450 includes down-converter (DC) 455, remove cyclic prefix block 460, serial-to-parallel (S-to-P) block 465, size N fast Fourier transform (FFT) block 470, parallel-to-serial (P-to-S) block 475, and channel decoding and demodulation block 480.
[0093] FIG. 4A At least some of the components in FIGS. 400 and FIG. 4B The components in FIGS. 400 and 450 can each be implemented in software, or a combination of software and configurable hardware or software and fixed hardware, as desired. Specifically, it is noted that the FFT and IFFT blocks described in this document can be implemented as configurable software algorithms, and the value of N can be modified according to particular needs.
[0094] Furthermore, while the present disclosure is directed to embodiments implementing a fast Fourier transform and an inverse fast Fourier transform, this is for illustration only and can not be construed as limiting the scope of the present disclosure. It should be understood that in alternative embodiments of the present disclosure, the fast Fourier transform function and the inverse fast Fourier transform function can be readily replaced by a discrete Fourier transform (DFT) function and an inverse discrete Fourier transform (IDFT) function, respectively. It should be understood that for DFT and IDFT functions, the value of the variable N can be any integer (i.e., 1, 4, 3, 4, etc.), while for FFT and IFFT functions, the value of the variable N can be any integer that is a power of 2 (i.e., 1, 2, 4, 8, 16, etc.).
[0095] In transmit path circuitry 400, channel coding and modulation block 405 receives a set of information bits, applies coding (e.g., LDPC coding) and modulation (e.g., quadrature phase shift keying (QPSK) or quadrature amplitude modulation (QAM)) to the input bits to generate a sequence of frequency domain modulation symbols. A serial-to-parallel block 410 converts (i.e., de-multiplexes) the serial modulated symbols to parallel data to generate N parallel symbol streams, where N is the IFFT / FFT size used in the BS 102 and the UE 116. An N-point IFFT block 415 then performs an IFFT operation on the N parallel symbol streams to generate time domain output signals. A parallel-to-serial block 420 converts (i.e., multiplexes) the parallel time domain output symbols from the N-point IFFT block 415 to generate a serial time domain signal. An add cyclic prefix block 425 then inserts a cyclic prefix to the time domain signal. Finally, an up-converter 430 modulates (i.e., up-converts) the output of the add cyclic prefix block 425 to an RF frequency for transmission via a wireless channel. The signal can also be filtered at baseband before conversion to the RF frequency.
[0096] The transmitted RF signal arrives at the UE 116 after passing through the wireless channel, and the reverse operation to that at the BS 102 is performed at the UE 116. A down-converter 455 down-converts the received signal to baseband frequency and the remove cyclic prefix block 460 removes the cyclic prefix to generate a serial time domain baseband signal. A serial-to-parallel block 465 converts the time domain baseband signal to parallel time domain signals. An N-point FFT block 470 then performs an FFT algorithm to generate N parallel frequency domain signals. A parallel-to-serial block 475 converts the parallel frequency domain signals to a sequence of modulated data symbols. The channel estimation and demodulation block 480 demodulates and then decodes the modulated symbols to recover the original input data stream.
[0097] Each of gNBs 101-103 can implement a transmit path similar to that described in connection with with transmitting in a downlink to user equipment 111-116, and can implement a receive path similar to that described in connection with receiving in an uplink from user equipment 111-116. Similarly, each of user equipment 111-116 can implement a transmit path corresponding to the architecture for transmitting in an uplink to gNBs 101-103, and can implement a receive path corresponding to the architecture for receiving in a downlink from gNBs 101-103.
[0098] A peer awareness communication (PAC) network is a fully distributed communication network that allows for direct communication between PAC devices (PDs). The PAC network can use several topologies similar to mesh, star, etc. to support interactions between PDs for various services. While the present disclosure uses PAC networks and PDs as examples to set forth and illustrate the present disclosure, it is noted that the present disclosure is not limited to these networks. The general concepts set forth in the present disclosure can be used in various types of networks with different scenarios.
[0099] FIG. 5 An example network configuration 500 according to embodiments of the present disclosure is shown. FIG. 5 The illustrated embodiment of network configuration 500 is for illustration only. FIG. 5 The scope of the present disclosure is not limited to any particular implementation. As FIG. 5 shown, electronic device 501 can perform one or more functions of 111-116 as FIG. 1 shown. In one embodiment, the electronic device can be 111-116 and / or 101-103 as FIG. 1 shown.
[0100] A PD can be an electronic device. FIG. 5 An example electronic device 501 according to various embodiments is shown. Referring to FIG. 5 , electronic device 501 can communicate with electronic device 502 via a first network 598 (e.g., a short-range wireless communication network), or with electronic device 104 or server 508 via a second network 599 (e.g., a long-range wireless communication network). According to embodiments, electronic device 501 can communicate with electronic device 504 via server 508.
[0101] According to an embodiment, the electronic device 501 can include a processor 520, a memory 530, an input device 550, a sound output device 555, a display device 560, an audio department 570, a sensor 576, an interface 577, a haptic department 579, a camera 580, a power management department 588, a battery 589, a communication interface 590, a subscriber identification module (SIM) 596, or an antenna 597. In some embodiments, at least one of the components (e.g., the display device 560 or the camera 580) can be omitted from the electronic device 501, or one or more other components can be added in the electronic device 501. In some embodiments, some of the components can be implemented as single integrated circuitry. For example, the sensor 576 (e.g., a fingerprint sensor, an iris sensor, or an illuminance sensor) can be implemented as embedded in the display device 560 (e.g., a display).
[0102] For example, the processor 520 can execute software (e.g., a program 540) to control at least one other component (e.g., a hardware or software component) of the electronic device 501 coupled with the processor 520 and can perform various data processing or computation. According to one embodiment of the disclosure, as at least a part of the data processing or computation, the processor 520 can load a command or data received from another component (e.g., the sensor 576 or the communication interface 590) to a volatile memory 532, process the command or the data stored in the volatile memory 532, and store resulting data in a non-volatile memory 534.
[0103] According to an embodiment of the disclosure, the processor 520 can include a main processor 521 (e.g., a central processing unit (CPU) or an application processor (AP)) and an auxiliary processor 523 (e.g., a graphics processing unit (GPU), an image signal processor (ISP), a sensor hub processor, or a communication processor (CP)) that is operable independently from, or in conjunction with, the main processor 521. Additionally or alternatively, the auxiliary processor 523 can be adapted to consume less power than the main processor 521 or to be dedicated to a specific function. The auxiliary processor 523 can be implemented as a separate element from, or implemented as part of, the main processor 521.
[0104] The auxiliary processor 523 can control at least some of the functions or states of at least one of the components of the electronic device 501 (e.g., the display device 560, the sensor 576, or the communication interface 590) on behalf of the main processor 521 while the main processor 521 is in an inactive (e.g., sleep) state, or together with the main processor 521 while the main processor 521 is in an active state (e.g., is performing an application). According to an embodiment, the auxiliary processor 523 (e.g., an image signal processor or a communication processor) can be implemented as a part of another component functionally related to the auxiliary processor 523 (e.g., the camera 580 or the communication interface 190).
[0105] The memory 530 can store various data used by at least one component (e.g., the processor 520 or the sensor 576) of the electronic device 501. The various data can include, for example, software (e.g., the program 540) and input data or output data for a command related thereto. The memory 530 can include the volatile memory 532 or the non-volatile memory 534.
[0106] The program 540 can be stored in the memory 530 as software, and can include, for example, an operating system (OS) 542, middleware 544, or an application 546.
[0107] The input device 550 can receive a command or data to be used by another component (e.g., the processor 520) of the electronic device 501, from the outside (e.g., a user) of the electronic device 501. The input device 550 can include, for example, a microphone, a mouse, a keyboard, or a digital pen (e.g., a stylus pen).
[0108] The sound output device 555 can output sound signals to the outside of the electronic device 501. The sound output device 555 can include, for example, a speaker or a headphone jack. The speaker can be used for general purposes, such as playing multimedia or playing a recording, and the headphone jack can be used for a telephone call. According to an embodiment, the headphone jack can be implemented as a separate form or as a part of the speaker.
[0109] The display device 560 can visually provide information to the outside (e.g., a user) of the electronic device 501. The display device 560 can include, for example, a display, a hologram device, or a projection device and a control circuit for controlling a corresponding one of the display, the hologram device, and the projection device. According to an embodiment, the display device 560 can include a touch circuitry adapted to detect a touch or a sensor circuitry (e.g., a pressure sensor) adapted to measure the intensity of force generated by the touch.
[0110] The audio module 570 can convert sound and electric signal in reciprocals. According to an embodiment, the audio module 570 can obtain the sound via the input device 550, or output the sound via the sound output device 555 or a headphone of an external electronic device (e.g., an electronic device 502) directly (e.g., using wired line) or wirelessly coupled with the electronic device 501.
[0111] The sensor 576 can detect an operational state (e.g., power or temperature) of the electronic device 501 or an environmental state (e.g., a state of a user) external to the electronic device 501, and then generate an electrical signal or data value corresponding to the detected state. According to an embodiment, the sensor 576 can include, for example, a gesture sensor, a gyro sensor, an atmospheric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an infrared (IR) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
[0112] The interface 577 can support one or more designated protocols to be used for the electronic device 501 to be coupled with the external electronic device (e.g., the electronic device 502) directly (e.g., using a wired line) or wirelessly. According to an embodiment of the disclosure, the interface 577 can include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, a secure digital (SD) card interface, or an audio interface.
[0113] The connection terminal 578 can include a connector through which the electronic device 501 can be physically connected with the external electronic device (e.g., the electronic device 502). According to an embodiment, the connection terminal 578 can include, for example, a HDMI connector, a USB connector, a SD card connector, or an audio connector (e.g., a headphone connector).
[0114] The haptic module 579 can convert an electrical signal into a mechanical stimulus (e.g., a vibration or movement) that can be felt by a user or an electrical stimulus that can be felt by a user. According to an embodiment, the haptic module 579 can include, for example, a motor, a piezoelectric element, or an electrical stimulator.
[0115] The camera 580 can capture a still image or moving images. According to an embodiment of the disclosure, the camera 580 can include one or more lenses, image sensors, image signal processors, or flashes.
[0116] The power management module 588 can manage power supplied to the electronic device 501. According to one embodiment, the power management module 588 can be implemented as at least a part of, for example, a power management integrated circuit (PMIC). The battery 589 can supply power to at least one component of the electronic device 501. According to an embodiment, the battery 589 can include, for example, a primary cell that is not rechargeable, a secondary cell that is rechargeable, or a fuel cell.
[0117] The communication interface 590 can support establishing a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device 501 and an external electronic device (e.g., the electronic device 502, the electronic device 504, or a server 508) and performing communication via the established communication channel. The communication interface 590 can include one or more communication processors that are operable independently from the processor 520 (e.g., an application processor (AP)) and support direct (e.g., wired) communication or wireless communication.
[0118] According to an embodiment of the disclosure, the communication interface 590 can include a wireless communication interface 592 (e.g., a cellular communication interface, a short-range wireless communication interface, or a global navigation satellite system (GNSS) communication interface) or a wired communication interface 594 (e.g., a local area network (LAN) communication interface or a power line communication (PLC)). A corresponding one of these communication interfaces can communicate with an external electronic device via a first network 598 (e.g., a short-range communication network such as Bluetooth, wireless-fidelity (Wi-Fi) direct, ultra-wide band (UWB), or infrared data association (IrDA)) or via a second network 599 (e.g., a long-range communication network such as a cellular network, the Internet, or a computer network (e.g., LAN or wide area network (WAN)).
[0119] These various types of communication interfaces can be implemented as a single component (e.g., a single chip) or can be implemented as multiple components (e.g., multiple chips) separate from each other. The wireless communication interface 592 can identify and authenticate the electronic device 501 in a communication network (e.g., the first network 598 or the second network 599) using subscriber information (e.g., international mobile subscriber identity (IMSI)) stored in the subscriber identification module 596.
[0120] The antenna 597 can transmit or receive signals or power to or from an external (e.g., an external electronic device) of the electronic device 501. According to an embodiment, the antenna 597 can include an antenna including a radiating element composed of a conductive material or a conductive pattern formed in or on a substrate (e.g., a PCB). According to an embodiment, the antenna 597 can include multiple antennas. In this case, at least one antenna appropriate for a communication scheme used in a communication network (e.g., the first network 198 or the second network 599) can be selected from the multiple antennas, for example, by the communication interface 590 (e.g., the wireless communication interface 592). Then, signals or power can be transmitted or received between the communication interface 590 and the external electronic device via the selected at least one antenna. According to an embodiment, another component (e.g., a radio frequency integrated circuit (RFIC)) other than a radiating element can also be formed as part of the antenna 597.
[0121] At least some of the above-described components can be coupled to each other via an inter-peripheral communication scheme (e.g., a bus, a general purpose input and output (GPIO), a serial peripheral interface (SPI), or a mobile industry processor interface (MIPI)) and transfer signals (e.g., commands or data) between them.
[0122] According to an embodiment of the disclosure, commands or data can be transmitted or received between the electronic device 501 and the external electronic device 504 via the server 508 coupled with the second network 599. Each of the electronic devices 502 and 504 can be a device of a same type as or different from the electronic device 501. According to an embodiment, all or some of the operations to be executed at the electronic device 501 can be executed at one or more of the external electronic devices 502, 504, or 508. For example, if the electronic device 501 can automatically perform a function or service, or in response to a request from a user or another device, instead of, or in addition to, executing the function or service, the electronic device 501 can request one or more of the external electronic devices to perform at least part of the function or service. The external electronic device(s) that receive the request can perform at least part of the requested function or service, or an additional function or an additional service related to the request, and transfer an outcome of the performance to the electronic device 501. The electronic device 501, whether or not further processing is performed on the outcome, can provide the outcome as at least part of a reply to the request. To that end, for example, a cloud computing, distributed computing, or client-server computing technology can be used.
[0123] The electronic device according to various embodiments can be one of various types of electronic devices. The electronic devices can include, for example, a portable communication device (e.g., a smartphone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance. According to an embodiment of the disclosure, the electronic devices are not limited to the aforementioned devices.
[0124] Various embodiments set forth herein can be implemented as software (e.g., a program 140) including one or more instructions that are stored in a storage medium (e.g., an internal memory 536 or an external memory 538) that is readable by a machine (e.g., the electronic device 501). For example, a processor (e.g., the processor 520) of the machine (e.g., the electronic device 501) can invoke at least one of the one or more instructions stored in the storage medium, and the machine operates based on the invoked instruction(s). This allows the machine to perform at least one function according to the invoked instruction(s). The one or more instructions can include a code generated by a compiler or a code executable by an interpreter. The machine-readable storage medium can be provided in the form of a non-transitory storage medium. Wherein, the term "non-transitory" only implies that the storage medium is a tangible device, and does not include a signal (e.g., an electromagnetic wave), but this term does not differentiate a case where data is semi-permanently stored in the storage medium and a case where data is temporarily stored in the storage medium.
[0125] According to an embodiment of the disclosure, the method according to various embodiments of the disclosure can be included and provided in a computer program product. The computer program product can be traded as a product between a seller and a buyer. The computer program product can be distributed in the form of a machine-readable storage medium (e.g., a compact disc read only memory (CD-ROM)) or online through an application store (e.g., Google Play StoreTM). If distributed online, at least part of the computer program product can be temporarily generated or at least temporarily stored in the machine-readable storage medium (e.g., a memory of a manufacturer's server, an application store's server, or a relay server).
[0126] FIG. 6 An example one-way two-way ranging 600 according to an embodiment of the disclosure is illustrated. FIG. 6 The illustrated embodiment of the one-way two-way ranging 600 is for illustration only. FIG. 6 One or more of the illustrated components can be implemented in specialized circuitry configured to perform the recited function, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited function. The one-way two-way ranging 600 can be performed in an electronic device 501 as FIG. 5 in the illustrated electronic device 501.
[0127] SS-TWR involves a single measurement of the round-trip delay of a single message from initiator to responder and the response sent back to the initiator. FIG. 7The operation of SS-TWR is shown in which device A initiates the exchange and device B responds to complete the exchange. Each device precisely timestamps the transmission and reception times of the message frames, so the time Tround and the time Treply can be computed by simple subtraction. Thus, the resulting time-of-flight Tprop can be estimated by the following equation:
[0128]
[0129] FIG. 7 An example two-way range finding 700 with three messages is shown, in accordance with an embodiment of the disclosure. FIG. 7 The illustrated embodiment of two-way range finding is for illustration only. FIG. 7 One or more of the illustrated components can be implemented in specialized circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions. The two-way range finding 700 with three messages can be performed in an electronic device 501 as FIG. 5 The illustrated electronic device 501.
[0130] In FIG. 7 DS-TWR with three messages is shown in which the estimation error caused by clock drift in long response delays is reduced. Device A is the initiator for the initialization of the first round-trip measurement, while device B as the responder responds to complete the first round-trip measurement and simultaneously initiates the second round-trip measurement. Each device precisely timestamps the transmission and reception times of the messages, and the resulting time-of-flight estimate Tprop can be computed by the following expression:
[0131]
[0132] The resulting time-of-flight estimate from SS-TWR or DS-TWR can then be converted to a distance estimate R using (where c is the speed of light).
[0133] FIG. 8 An example localization 800 of a tag based on distance measurements from anchor points is shown, in accordance with an embodiment of the disclosure. FIG. 8 The illustrated embodiment of localization 800 of a tag is for illustration only. FIG. 8 One or more of the illustrated components can be implemented in specialized circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0134] FIG. 8An exemplary setup for localization of a tag based on distance measurements from anchor points is shown in FIG. 1. Assume that the coordinates of the anchor points are known, the ith anchor point is at p i = (x i ,y i ,z i ), i = 1, 2,..., N, where N is the number of anchor points. The tag (or target) position p t = (x t ,y t ,z t ) is to be estimated. For a 2D localization problem, two of the three coordinates are estimated, e.g., just (x t ,y t ). The ith anchor point performs a measurement m i on the tag, where the m's can be distance measurements. The localization scheme typically tries to perform an inverse mapping from the measurements to the position of the target.
[0135] A localization result can be generated or computed for each time instance for which distance measurements from anchor points are available. If the distance measurements from anchor points are updated frequently, this can result in frequent localization processing. If the result of the localization does not trigger any action by an application that uses the localization result (this can be the case if the position of the target is outside a region of interest for possible actions), or if the localization result can be considered not accurate or not reliable (this can be the case if the target is too far away from the anchor points), frequent localization can not be needed.
[0136] In this disclosure, a cell or grid based localization method is introduced that takes ranging measurements and anchor point positions as input and generates a position of a target with a certain confidence measure depending on the state of the cell or target. A localization engine using the method tessellates the region of localization into cells (c_1, c_2,..., c_M) and provides at each step a confidence value that the target is in the ith cell (i = 1, 2,..., M). A cell is essentially a certain localization space or region of interest. A certain action can be triggered when the method identifies that the target is in the space with a sufficiently high confidence.
[0137] FIG. 9 An example of two localization engine frameworks 900 according to embodiments of the disclosure is shown. FIG. 9 The shown embodiments of the two localization engine frameworks 900 are for illustration only. FIG. 9 One or more of the shown components can be implemented in dedicated circuitry configured to perform the mentioned functions, or one or more of the shown components can be implemented by one or more processors executing instructions for performing the mentioned functions.
[0138] FIG. 9 Two different positioning frameworks are shown, where the right-hand side framework is the focus of the present disclosure. While FIG. 9 distance measurements are shown, it is noted that other types of measurements such as time-difference-of-arrival, angle-of-arrival, time-of-arrival can also be applied to the framework.
[0139] FIG. 10 An example positioning engine architecture 1000 according to embodiments of the present disclosure is shown. FIG. 10 The shown embodiment of the positioning engine architecture 1000 is for illustration only. FIG. 10 One or more of the shown components can be implemented in dedicated circuitry configured to perform the mentioned functionality, or one or more of the shown components can be implemented by one or more processors executing instructions for performing the mentioned functionality.
[0140] An example architecture of a positioning engine is shown in FIG. 10 Methods of constructing a target state space, applying state transitions, computing cell likelihoods and corresponding state likelihoods are described in the present disclosure. The construction of the target state space and state transitions can be included in the block "configure positioning engine", while the computation of cell likelihoods and / or state likelihoods based on measurements can be performed in the block "positioning engine".
[0141] For formalizing the state space, terms from graph theory can be used. In the present disclosure, graph theory basics are considered for completeness. Based on a vertex set V containing n elements, denoted as V = {v1, v2,..., vn}, an undirected graph is constructed. Vertices are also referred to as nodes. An edge represented by the pair (i,j) with v n ,v i ,v j ∈ V indicates that there is a relationship between the pair of vertices in V. The set of all edges of a graph is denoted as E. The vertex set V and the set of edges E define the (finite, simple) graph G = (V; E).
[0142] Vertices v i and v j are adjacent if there is an edge between them. The n x n adjacency matrix A(G) contains the adjacency relationships between vertices, where the entry in the i-th row and j-th column, denoted by A(G) i,j , is 1 if (i,j) ∈ E, and 0 otherwise. The non-zero entries in the i-th row of A(G) give the set of vertices connected to vertex i, referred to as the adjacency list of vertex i and (i,j) ∈ E. The adjacency list of vertex v is denoted as which is the set of vertices adjacent to v.
[0143] In this disclosure, self-localizable mobile devices are considered and methods for performing on-device localization using range measurements from anchors are described. Other types of measurements (e.g., time-difference-of-arrival, angle-of-arrival, time-of-arrival) can also be applied with straightforward modifications to our framework. The localization methods can also be performed at the anchors or at a central unit controlling the anchors. It is assumed that the mobile devices (also referred to as targets or markers) move in a region defining a region of interest for this problem The region may have a boundary defined in terms of bounds related to spatial coordinates.
[0144] Examples are a room, a corridor, a lobby, the vicinity or interior of a vehicle, etc. For illustration, it can be assumed that there is one target in order to make the tracking problem into an estimation of the state of this target (a possible definition of the state of a target is provided later). However, it is to be noted that the method can easily be extended to a multi-target tracking situation, which can be seen as a collection of single-target tracking methods operating in parallel.
[0145] In one embodiment, a discrete state space can be constructed with a finite number of states ({s i}, i = 1, 2,..., S). This state space can be specified with a target / marker state graph (G S ), where each node corresponds to a state and each edge represents a state transition associated with a specific probability called state transition probability (q(s, s’)).
[0146] The target state K at time t may be a vector of components, where some of the components are kinematic and include but are not limited to position, velocity, and possibly acceleration. There can be additional components that can be related to the identity or other characteristics of the target. For example, if one of the components specifies the target type, this component can also specify information such as radar cross section, drag coefficient, and mass of an aerial target; in the case of a marine target, noise levels of radiation at various frequencies and motion characteristics (e.g., maximum velocity) can be specified. The state space can vary between problems depending on the nature of the target to be tracked and the sensor (or other) information to be received. For the use of the recursions given in this disclosure, there is an additional requirement on the target state space. The state space can be sufficiently rich so that (1) the motion of the target is Markovian in the chosen state space, and so that (2) the sensor likelihood function depends only on the state of the target at the time of the observation.
[0147] FIG. 11An example of constructing a state transition diagram 1100 according to an environment according to an embodiment of the present disclosure is shown. FIG. 11 The illustrated embodiment of the construction state transition diagram 1100 is for illustration only. FIG. 11 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0148] Constructing the state space is important and problem-specific. Two approaches are provided to form the state space of the positioning engine. FIG. 11 The basic steps are shown in . The design of other components of the positioning engine can closely depend on the choice of these schemes. In order to construct the discrete state space, the first step is to convert The grid is formed into a finite set of cells (also called grids) indexed by 1…,m, where c1,…,c M For illustration purposes, consider positioning in a subset of the two-dimensional space (i.e., is a bounded subset of the plane).
[0149] However, the construction can be extended to higher dimensions, such as three dimensions. The cells can be any convex polygon, including but not limited to hexagonal and square grids and Voronoi grids. Different cells can have different shapes and sizes. For illustration, a gridded environment (which may also be referred to as a "grid world") is provided as a connected graph G C =(V C ,E C ), where V C ={c1,c2,…,c M}. G C The definition of the adjacency matrix (equivalent to E C The definition of ) can be design specific. An example construction is based on the V C The nodes form the Delaunay triangulation to define adjacency.
[0150] FIG. 12 An example of constructing a connectivity graph 1200 from a grid world for a 2D scene according to an embodiment of the present disclosure is shown. FIG. 12 The embodiment of the configuration connectivity diagram 1200 shown is for illustration only. FIG. 12 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0151] like FIG. 12 As shown, GC An example configuration of the grid world, where two nodes are adjacent if and only if the grids share a common edge.
[0152] FIG. 13 An example of constructing a connectivity graph 1300 from a grid world for a 2D scene for vehicle access is shown, according to an embodiment of the present disclosure. FIG. 13 The illustrated embodiment of the constructed connectivity graph 1300 is for illustration only. FIG. 13 One or more of the illustrated components can be implemented in specialized circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0153] In one example, the region of localization may be a space surrounding the vehicle as shown in the leftmost diagram in FIG. 13 The region may be gridded into cells as shown in the middle and rightmost diagrams in FIG. 13 . The physical interpretation of each cell label is shown in Table 1. As shown in FIG. 13 , the cells can represent physical spaces inside or outside the vehicle. The cells inside the vehicle can be defined to correspond to the seats of the vehicle (Cell 1, Cell 2, Cell 3, Cell 4). The cells can be designed with different shapes and sizes, possibly, to enable the localization of a target (i.e., identifying the cell in which the target is located) to trigger subsequent actions based on the localization result (e.g., in the upper layer).
[0154] For the vehicle example, a cell can cover a radius of approximately 2 meters from the vehicle door to the outside of the vehicle (as shown in Cell 12 in FIG. 13 ), with the purpose of unlocking the vehicle when a marker is localized to be in this cell. Another cell can cover the space inside the vehicle corresponding to the driver’s seat (as shown in Cell 1 in FIG. 14 ), with the purpose of starting the vehicle engine when a marker is localized to be in this cell.
[0155] Table 1: Cell labels
[0156]
[0157] After the connectivity graph is constructed, a target state graph can be constructed according to either of the following two schemes. It is noted that these two schemes can not be the only ways to construct a target state graph. For example, there can be a hybrid scheme that combines Scheme 1 and Scheme 2 for forming a target state graph.
[0158] In one example of Scheme 1, the target state graph is the same as the connectivity graph (G S = G C ).
[0159] In one example of Scheme 2, the target state graph G S is different from the connected graph. One method for constructing such a target state graph is to use the heading of the target. FIG. 14 shows why for a target moving G S ≠ G C which is the possible case when a person walks in and holds the target in hand or keeps it in pocket or bag or equivalent mobile device.
[0160] FIG. 14 shows an example of a target state graph 1400 (Scheme 2) for capturing information about the heading of a target according to an embodiment of the disclosure. FIG. 14 The illustrated embodiment of the target state graph 1400 is for illustration only. FIG. 15 One or more of the illustrated components can be implemented in a special-purpose circuit configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0161] As the target moves along the connected graph, its state is represented by a node s = (p, c) e S, where c e V C is the current node of the target and p e V O is its previous node. If the target transitions to a new state s' = (p', c'), then p' = c. Thus, for a given occupancy graph G C , the target state space is Each state in G S is enumerated to give the nodes V S = {s1,..., s S}, and the directed target state graph G S : = (V S , E S ) is defined, where the edges E S represent possible transitions between target states. Let R = {(p, c) e S : p = c} represent the subset of states in which the target is at rest. These states are referred to as rest states. Other states are referred to as dynamic states. In FIG. 15 is constructed from G C . S
[0162] FIG. 15 shows an example of constructing a target state graph 1500 from a connected graph according to an embodiment of the disclosure. FIG. 15 The illustrated embodiment of the constructing a target state graph 1500 is for illustration only. FIG. 16 One or more of the illustrated components can be implemented in specialized circuitry configured to perform the recited functions, or one or more of the components can be implemented by one or more processors executing instructions to perform the recited functions.
[0163] In the present disclosure, a method is provided to estimate the position of a target using range measurements from anchor points and in FIG. 16 A main block of the positioning engine is shown.
[0164] FIG. 16 An example positioning engine 1600 according to an embodiment of the present disclosure is shown. FIG. 16 The illustrated embodiment of the positioning engine 1600 is for illustration only. FIG. 16 One or more of the illustrated components can be implemented in specialized circuitry configured to perform the recited functions, or one or more of the components can be implemented by one or more processors executing instructions to perform the recited functions.
[0165] As FIG. 16 The positioning engine 1600 computes initial state probabilities in block 1602, applies state transitions in block 1604, performs ranging operations in block 1606, computes likelihoods in block 1608, updates state probabilities with the likelihood block in block 1610, and computes confidence values for each cell in block 1612. After computing the confidence values for each cell in block 1612, the positioning engine 1600 also applies state transitions in block 1604.
[0166] The positioning engine starts with an initial distribution of states (i.e., p(s i ), i = 1, 2,..., S) and iteratively updates these probabilities over time. There are two stages of updates. The first is to apply state transition probabilities controlled by a dynamic model. The second is to update state probabilities based on likelihood values computed from ranging measurements reported by anchor points. At the end of each iteration, the positioning engine outputs confidence values (in terms of probabilities, likelihoods, log-likelihoods, etc.) that indicate the probabilities of the target’s current location in a cell. These confidence values can be considered as soft information related to the target’s location, which can be used to extract information (e.g., reliability scores), to perform hypothesis testing in arbitrary forms (including but not limited to log-likelihood ratios), to indicate the target’s current location according to cell indices.
[0167] In the present disclosure, a block to construct a positioning engine is described.
[0168] In FIG. 16 The "application state transition" block (e.g., 1604) is described in the middle. Note that this block can be designed offline and can not need to be updated during the online processing of the localization.
[0169] The state transition probability q(s | s') represents the probability of transitioning from state s' to s. The state transition probability can be interpreted as a weight on the directed graph G S . Note that assigning state transition probabilities follows some assumptions about the target motion (which can be specified according to a target motion model).
[0170] In one example of Scheme 1, an arbitrary valid assignment of state transition probabilities for a given s' ∈ V S ensures that ∑q(s | s') = 1.
[0171] In one example of Scheme 2, this construction is related to the target state graph construction scheme that encodes the current cell and the previous cell of the target into one state. As noted earlier, the state construction in this approach enables us to model the heading of the motion of the target. In one example of the formation of the state transition probability, for a particular state that is not the stationary state s = (p, c), the target heading angle θ(s) can be computed according to .
[0172] If s is the stationary state, the heading angle cannot be defined. In addition, there is a probability p(s) for all dynamic states that indicates the probability of transitioning to the stationary state. With these two definitions, one possible design of the state transition probability can be as follows. If s' is the stationary state, q(s | s') equals p s′ ; if s' is not the stationary state and s belongs to the neighbors of G S in G S (i.e., ), then (1 - p s )w(s, s'); otherwise, it is 0. Here w(s, s') is a bias function that satisfies . The bias function is related to the target motion model. The bias function for the target motion with heading is generally constructed as: w(s, s') = f(Aθ(s, s')), where Aθ(s, s') is the angle difference in heading between the two states.
[0173] The state transition probability is used to update the state probability using the following pseudo code as shown in Table 2.
[0174] Table 2: Pseudo code for state transition probability
[0175]
[0176] The present disclosure relates toFIG. 17 the block "compute likelihoods" (e.g., 1608) and "update state probabilities with likelihoods" (e.g., 1610). The block "compute likelihoods" can be interpreted as FIG. 17 the block diagram in FIG. 16.
[0177] FIG. 17 An example of computing state likelihoods 1700 is shown in accordance with an embodiment of the present disclosure. FIG. 17 The embodiment of computing state likelihoods 1700 shown is for illustration only. FIG. 18 One or more of the components shown can be implemented in specialized circuitry configured to perform the functions mentioned, or one or more of the components shown can be implemented by one or more processors executing instructions to perform the functions mentioned.
[0178] Let Y k be the set of range measurements available at time t k . Let y k denote the value of the random variable Y k . The likelihood function then computes the likelihood of the target being in cell i at time t k = y k given the measurement Y k . Other types of measurements (e.g., time difference of arrival, angle of arrival, time of arrival, etc.) can also be used as input with appropriate mapping or function from the measurements and anchor locations to target locations.
[0179] The present disclosure provides a method of constructing a likelihood function from range measurements. Note that the target location is a non-linear function of the anchor locations and range measurements. This non-linearity can be taken into account during the formation of the likelihood function. Note that given an arbitrary error distribution, one can form a likelihood function from the joint probability distribution of the measurement errors.
[0180] For example, assume that the measurement errors are Gaussian random variables with covariance Q and that the target has an estimate of Q, then the likelihood function can be written as
[0181]
[0182] where Here denotes the coordinates of the i-th anchor. For each cell, the above likelihood function is evaluated by computing a numerical integral. After the cell likelihoods are computed for each cell, the next step is to compute the likelihoods of each state in the target state graph.
[0183] In this embodiment of Scheme 1, the cell likelihoods directly translate into state likelihoods. For Scheme 2, as shown in Table 3, the following pseudo code converts the cell likelihoods into state likelihoods.
[0184] Table 3: Pseudocode for converting cell likelihoods to state likelihoods
[0185]
[0186] Finally, the state probabilities can be updated by the likelihoods as follows. Note that step 3 is a normalization step to convert the state confidence values to valid state probability values, such that the sum of the state probabilities is unity, as shown in Table 4.
[0187] Table 4: Pseudocode for updating state probabilities with likelihoods
[0188]
[0189] The confidence of each state is used to compute a cell confidence value, which is the output of the localization engine at each iteration. For Scheme 1, the cell confidence value is equal to the state confidence value. For Scheme 2, the cell confidence value is computed according to the following pseudocode, as shown in Table 5.
[0190] Table 5: Pseudocode for computing cell confidence from state confidence
[0191]
[0192] The final decision regarding the state (or a subset thereof) at any given time can be obtained according to the state with the largest state probability at that time or according to a weighted state average of the state probabilities at that time.
[0193] An extended Kalman filter (EKF) can be used to estimate and track the position of a tag based on distance measurements from the tag to multiple anchors. The EKF algorithm assumes a dynamic model for the tag. The dynamic model provides a prediction of the tag's trajectory according to the model, and the algorithm uses the measurements to correct the prediction and generate an estimate of the tag's position. Depending on the environment, the tag's position relative to the anchors, and the actual trajectory of the tag, etc., one EKF model can produce better localization and tracking results relative to another EKF model. In this disclosure, a localization and tracking solution is described that can be adapted to multiple EKF models.
[0194] FIG. 18 An example EKF model 1800 according to an embodiment of the disclosure is shown. FIG. 18 The illustrated embodiment of the EKF model 1800 is for illustration only. FIG. 18One or more of the components shown can be implemented in specialized circuitry configured to perform the recited functions, or one or more of the components can be implemented by one or more processors executing instructions to perform the recited functions.
[0195] FIG. 19 Two example EKF's are shown with two different dynamic models - i.e., an EKF with first order dynamics and an EKF with second order dynamics. More generally, there can be M dynamic models. The present disclosure provides methods that are applicable to multiple EKF models. The methods include methods for state estimation for a hybrid EKF, methods for performing model updates, methods for computing model likelihoods, and methods for combining state estimates. The present disclosure also provides methods for adjusting or adapting model likelihoods based on other inputs.
[0196] The quality of the range measurements impacts the accuracy of the localization and tracking. When the range measurements are less reliable (or more error prone), a particular type of modeling of the state dynamics of the KF / EKF provides more accurate results than other models. The KF / EKF model that provides more accurate localization and tracking can also change when the scenario changes.
[0197] For example, in a very reliable measurement scenario (e.g., line of sight (LOS) scenario), it can be useful to make the second order dynamic model a process with 6 states, as this model tracks the position and velocity (or equivalently, heading) of the target. However, when the range measurements are unreliable (e.g., non-LOS (NLOS) scenario), the accuracy of the localization and tracking based on a second order dynamic with 6 states can decrease. In this scenario, a KF / EKF with first order dynamics as a process with 3 states can provide better localization and tracking.
[0198] Similarly, when a sufficient number of range measurements (or range measurements from all anchors) are available, a second order dynamic with 6 states can provide better localization and tracking. However, when some of the range measurements are missing, the accuracy of the localization and tracking can decrease with 6 states.
[0199] In general, when the range measurements are more error prone or unreliable, a first order dynamic model with 3 states with a lower dimensional state space can provide better results. This motivates us to design a hybrid and adaptive switching localization and tracking with M dynamic models. FIG. 19 A block diagram of this localization and tracking with M parallel EKF's with multiple dynamic hybrid models is shown in FIG.
[0200] FIG. 19An example of M parallel EKF 1900 with multiple dynamic hybrid models according to embodiments of the disclosure is shown. FIG. 19 The illustrated embodiment of M parallel EKF 1900 with multiple dynamic hybrid models is for illustration only. FIG. 19 One or more of the illustrated components can be implemented in special-purpose circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0201] FIG. 20 An example is shown of (1) multiple models and EKF for each model (labeled "Model"), (2) a model probability assigner, (3) a mixer at the input of each EKF, and (4) an estimate combiner as the output of each EKF. The state estimate (X 1 ,…,X M ) of the previous time step is input to the mixer, which computes an initial mixed state estimate for the filter, denoted (X 01 ,…,X 0M ). Using this initial state estimate and the observation (Z), the filter outputs the next state estimate (X 1 ,…,X M ) and the model likelihoods (Λ1,…,Λ M ).
[0202] FIG. 20 An example Markov chain 2000 for model switching according to embodiments of the disclosure is shown. FIG. 20 The illustrated embodiment of Markov chain 2000 for model switching is for illustration only. FIG. 20 One or more of the illustrated components can be implemented in special-purpose circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0203] The model probability assigner tracks the state of the model selection indicator (denoted r k for the kth time instant), which is modeled as a Markov chain (see FIG. 21 for M = 2) and updates the model selection probabilities using the likelihood values. The state estimate combiner combines the outputs of the M filters and provides the final mixed state estimate.
[0204] The detailed steps for the positioning engine incorporating the mixing of M dynamic models are as follows. p(i,j) is denoted the forward probability, i.e., p(i,j) = P(r k =i | r k-1 =j), and μ mat(i,j) is expressed as the backward probability, that is, μ mat (i,j)=P(r k-1 =j|r k =i). Therefore, by the Bayesian criterion, μ mat (i,j)=P(r k-1 =j|r k =i) = P(r k =i|r k-1 =j)P(r k-1 =j)=
[0205] p(i,j)μ(j), where μ(j)=P(r k-1 =j) is the probability of selecting model j at the previous moment.
[0206] A detailed description of the main steps of the EKF-based hybrid model for localization and tracking is described below and shown in Table 6.
[0207] Table 6: Main steps of the EKF-based hybrid model
[0208]
[0209] The model transition probability p(i,j) can be updated or adapted based on other observations / measurements / information. FIG. 21 . In one example, the model transition probability update can depend on whether one or more measurement results are missing or partially lost (e.g., the distance measurement between the marker and the anchor point). If there is no (partial) measurement loss, the model transition probability can be a configuration; if there is (partial) measurement loss, a model can be selected or preferred.
[0210] FIG. 21 An example of mixing 2100 utilizing two EKF models is shown according to an embodiment of the present disclosure. FIG. 21 The illustrated embodiment of the mixing 2100 utilizing two EKF models is for illustration only. FIG. 21 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0211] FIG. 19 The corresponding case with two EKF models is shown FIG. 22Aspecial case. In one example, when there is (partial) measurement loss, first order dynamics is chosen for EKF; otherwise the model transition probability remains the same. One specific example is shown below. When there is no (partial) measurement loss, and when there is (partial) measurement loss (i.e., first order dynamics is chosen),
[0212] In the present disclosure, a positioning system using a wireless sensor network is provided, where sensors (anchors) measure the distance (also called range) of a tag to the anchors and relay the measurements to the tag over a wireless communication channel. Because these measurements are subject to sensing errors, the tag obtains an estimate of the true value of the physical quantity.
[0213] One approach to improve this estimation accuracy at the tag is to connect to a larger number (possibly all) of anchors in the network. However, this can not be a feasible or desirable option because connecting to a larger number of nodes increases the operational cost (e.g., scheduling overhead and other metrics). Therefore, it is important to design an optimal / near-optimal strategy / algorithm that can implement anchor selection to achieve a target accuracy at a minimum cost. One application of this algorithm is automatic node selection (ANS) in indoor positioning, where ANS can decide a set of anchors with minimum connection cost that can guarantee a target estimation accuracy.
[0214] The present disclosure relates to a new positioning resource management method for positioning using a wireless sensor network. Specifically, each sensor (alternatively called anchor) in the network is capable of measuring the distance of a target (also called range measurement) and sending the range measurement to the target over a wireless communication channel. Based on the estimated location from the range measurements, the target uses the method to determine the anchors that the target can actively collect measurements from to achieve a particular target estimation accuracy.
[0215] In one embodiment, the wireless sensor network-based positioning system of anchors can be deployed to collect range measurements of a target. Each anchor in this network as well as the target can be computer-implemented to process data and a two-way radio to share information, a battery for providing power. After some periodic / aperiodic time interval, the range measurements can be sent by the anchors to the target over a wireless communication channel. At the end of one reporting period when all active anchors have sent their latest range measurements, a measurement report can be constructed at the target by connecting all the measurements in one reporting period.
[0216] A tracking algorithm may be run in the target's computer and collect measurement reports to estimate the target's position relative to a global coordinate system (GCS). Examples of tracking algorithms are least squares and arbitrary Bayesian filtering methods (e.g., Kalman and extended Kalman filters). After a time interval, a so-called activity period, which may include one or more reporting periods, the target may decide to select a new set of active anchor points within communication range where ranging can be performed. Each anchor point may know its position relative to the GCS. The target may obtain the position of an anchor point upon request at the beginning of an activity period. In the present disclosure, a resource management method is introduced that allows the target to select a set of active anchor points for each activity period.
[0217] It should be noted that the positioning system described is an example system to which the method can be applied. Other systems are also possible, in which, when information for performing an operation as described in the present disclosure is available at a unit performing the operation, anchor point selection and / or marker position tracking can be performed by one or more of the anchor points or by a central control unit connected to the anchor points.
[0218] FIG. 22A An example of static anchor point selection 2200 is shown according to an embodiment of the present disclosure. FIG. 22A The illustrated embodiment of static anchor point selection 2200 is for illustration only. FIG. 22A One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0219] The method in this embodiment can be used to select a set of candidate anchor points available in the network. (Meet the criteria / target set) Determine the active anchor set This method can be applied to FIG. 22B A one-time (static) or semi-static anchor point selection system as shown, where the anchor point selection is performed at the beginning of a ranging / positioning session and cannot be performed during the current ranging / positioning session. FIG. 22B A more dynamic / adaptive anchor point selection system is shown, where anchor point selection can be triggered for time intervals similar to ranging or positioning time intervals (if assessed as needed / desired).
[0220] FIG. 22B An example of dynamic anchor point selection 2250 is shown according to an embodiment of the present disclosure. FIG. 22B The illustrated embodiment of dynamic anchor point selection 2250 is for illustration only. FIG. 23One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0221] During the first measurement report of the activity period, the target The candidate anchors in the target are located. The measurement reports for the activity period are prepared at discrete time steps t=0,1,…,T. The target has an estimated value for its position It can be obtained from the position estimate calculated at the previous time step (when t>0) or from the latest estimated position available after the completion of the previous activity cycle. Target based on Calculation from The pseudo-distance measurement results of the candidate anchor points in , where ||·|| represents the Euclidean norm. Based on the pseudo-distance, the target is to calculate the estimated value of the estimation error covariance at time t as follows:
[0222]
[0223] where Q is the measurement error covariance, and the Jacobian matrix is given by:
[0224]
[0225] The metrics of interest can be The scalar function of Low A value of implies better localization performance. An example of a metric of interest is the estimated geometric dilution of precision (GDOP).
[0226]
[0227] Express φ as the following map: in express The power set of
[0228]
[0229] In equation (4), By stacking the equation (2) defined The anchor point selection can be defined as performing the following operation at each time step t: given
[0230]
[0231] In equation (5), c(N) is a cost function associated with the subset N and φ0is a predetermined estimate accuracy threshold. An example cost function can simply be the number of anchor points to be selected. If the estimate accuracy cannot be met, the anchor point selection can indicate to select all candidate anchor points or can indicate an infeasible result. An algorithm for performing equation (5) can be accomplished with the following steps as shown in Table 7.
[0232] Table 7: Anchor point selection
[0233]
[0234] When the estimate accuracy of the current anchor set is worse than a certain threshold φ th , the anchor point selection process can be triggered. This can occur due to movement of the tag or movement of one or more anchors in the case of moving / portable anchors. φ th may be the same as φ0or φ th may include a hysteresis margin with respect to φ0so that φ th > φ0.
[0235] FIG. 23 An example of an adaptive anchor point selection process 2300 according to an embodiment of the disclosure is shown. FIG. 23 The illustrated embodiment of the adaptive anchor point selection process 2300 is for illustration only. FIG. 23 One or more of the illustrated components can be implemented in specialized circuitry configured to perform the recited functions, or one or more of the components can be implemented by one or more processors executing instructions to perform the recited functions.
[0236] An example process of adaptive anchor point selection is shown in FIG. 24 Based on the current active anchor set and the estimate of the current tag position (which can be obtained from a previous tag positioning result) a measure for the estimate accuracy φ(N) is computed in step 2302. If in step 2304 the accuracy is estimated to become worse than a threshold φ th , the anchor point selection process is triggered in step 2308, otherwise the current active anchor set can be maintained for subsequent ranging and positioning. If the anchor point selection process is triggered, the current active anchor set for ranging is updated with the new set generated by the anchor point selection in step 2306. The next round of ranging measurements and positioning is then performed in step 2310 with the new active anchor set. The positioning result as well as the selected anchors are used to compute the next φ(N) for the next round of adaptation.
[0237] FIG. 24 An example of an adaptive anchor point selection system 2400 according to an embodiment of the disclosure is shown. FIG. 24The embodiment of the adaptive anchor selection system 2400 shown in the figure is for illustration only. FIG. 25 One or more of the components shown can be implemented in specialized circuitry configured to perform the noted function(s) or one or more of the components can be implemented by one or more processors executing instructions to perform the noted function(s).
[0238] In one embodiment, constructing the set of active anchors for an activity period can be divided into two phases.
[0239] In one example global anchor selection (GAS) / search phase, the algorithm in this phase picks a set of nodes based on some quality metric (e.g., received signal strength)
[0240] In one example of the local anchor selection (LAS) / search phase, in After fixing, for each activity period, the LAS picks
[0241] FIG. 25 An example of global and local anchor selection 2500 is shown in accordance with an embodiment of the disclosure. FIG. 25 The embodiment of the global and local anchor selection 2500 shown in the figure is for illustration only. FIG. 25 One or more of the components shown can be implemented in specialized circuitry configured to perform the noted function(s) or one or more of the components can be implemented by one or more processors executing instructions to perform the noted function(s).
[0242] The two-phase process is shown in FIG. 26 Note that for the LAS, the goal needs to obtain the location information of all anchors through signaling with the sensor network. Thus, the GAS can be used to reduce this signaling overhead at the beginning of each activity period. For the LAS, the algorithm can perform using the following steps as shown in Table 8.
[0243] Table 8: Local Anchor Selection
[0244]
[0245] In another embodiment, the cost function as shown in equation (5) can be the energy consumed in various parts of the localization process. There can be three components of energy consumption in the localization framework.
[0246] In one example, the energy consumed for the ranging initialization (E init ) is provided.
[0247] In another example, the energy (E msg ) consumed by the message passing is provided. In a beacon-controlled positioning framework, there are various message passing operations, each of which consumes E msg watts of energy.
[0248] In yet another example, the energy (E SP ) consumed by the computation and signal processing in the ranging / positioning unit of the beacon is provided.
[0249] FIG. 26 An example of a schematic of a per-ranging-interval positioning sequence and energy consumption model 2600 according to an embodiment of the disclosure is shown. FIG. 26 The shown example of a schematic of a per-ranging-interval positioning sequence and energy consumption model 2600 is for illustration only. FIG. 26 One or more of the shown components can be implemented in a dedicated circuit configured to perform the mentioned function, or one or more of the shown components can be implemented by one or more processors executing instructions for performing the mentioned function.
[0250] FIG. 27 An example positioning procedure initiated by a (position-unknown) beacon attempting to position itself using ranging measurements with (position-known) N anchors is shown. The energy (E init ) consumed for sending the ranging request is independent of the number of anchors. Receiving a ranging response with ranging data from each anchor consumes E msg per response. Finally, the positioning using a trilateration-based algorithm consumes energy E SP (N), which is dependent on the number of anchors. Thus, the total energy (E total ) consumed per ranging interval is E total = E init + NE msg + E SP (N).
[0251] In another embodiment, the anchor selection can take into account a desired / required positioning format / metric, e.g. a positioning dimension. Example positioning formats / metrics are 2D or 3D positioning results, more specifically (X, Y) or (X, Z) or (Y, Z) or (X, Y, Z) positioning. This is because the number of anchors as well as the metric φ(N) depend on the positioning format / metric. The desired / required positioning format / metric can change depending on various factors. One factor is the current situation of the beacon, e.g. the beacon’s position within a positioning area of interest.
[0252] FIG. 27 An example of switching 2700 between positioning modes based on distance according to an embodiment of the disclosure is shown.FIG. 27 The illustrated embodiment of the transition 2700 between positioning modes is for illustration only. FIG. 27 One or more of the illustrated components can be implemented in special-purpose circuitry configured to perform the recited functions, or one or more of the components can be implemented by one or more processors executing instructions to perform the recited functions.
[0253] In FIG. 28 Examples are shown in FIG. 6 in which the number of desired / required anchor points can change for a vehicle access use case, in which the positioning mode (i.e., 2D or 3D positioning) and thus the number of required anchor points changes relative to the distance of the markers from the vehicle. In FIG. 28 An example procedure for determining the distance threshold / boundary for changing the positioning mode is provided in FIG. 7.
[0254] FIG. 28 A flowchart of a method 2800 for determining the distance threshold for changing the positioning mode according to an embodiment of the disclosure is shown. FIG. 28 The illustrated embodiment of the method 2800 is for illustration only. FIG. 28 One or more of the illustrated components can be implemented in special-purpose circuitry configured to perform the recited functions, or one or more of the components can be implemented by one or more processors executing instructions to perform the recited functions.
[0255] As FIG. 29 The method 2800 includes obtaining all anchor point locations in the GCS in step 2802, fixing the maximum GDOP threshold and the positioning mode (ID / 2D / 3D) in step 2804, solving the constrained optimization problem to minimize the anchor points and maximize the distances in step 2806, and identifying the selected anchor point indices and the maximum distances for the supported modes in step 2810, as shown.
[0256] Positioning results can be generated or computed for each time instance for which distance measurements from anchor points are available. The quality of the measurements, including distances, angle of arrival (AOA), can have an impact on the positioning accuracy. Thus, a solution for enabling the positioning engine / system to take into account the quality of the measurements can be beneficial.
[0257] Time-of-flight (ToF) based distance measurements and angle-of-arrival (AoA) measurements are prone to measurement errors. These errors occur due to various reasons including but not limited to environmental factors, device limitations, interference, signal power, etc. Positioning of a "tag" device (not excluding other names) requires distance and / or AoA measurements from multiple anchors. Given the anchor locations and a sufficient number of distance and / or AoA measurements, the location of the device can be obtained after performing some calculations. Erroneous distance and AoA measurements lead to erroneous positioning.
[0258] Devices that measure distance and AoA can also report a confidence of the measured distance and AoA. The confidence of the measured distance or AoA can be reported in many forms or metrics, including but not limited to whether the signal path is line-of-sight (LoS), received signal strength (RSS), an RSS indicator, a correlation peak of a known code word (e.g., preamble), one or more values of a channel impulse response (CIR), a CIR with timing information, statistical measurements of a CIR, etc.
[0259] FIG. 29 An example of incorporating confidence of distance and AoA measurements 2900 in a positioning and tracking system is shown in accordance with an embodiment of the disclosure. FIG. 29 The illustrated embodiment of incorporating confidence of distance and AoA measurements 2900 is for illustration only. FIG. 29 One or more of the illustrated components can be implemented in special-purpose circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0260] These metrics can be used to improve the position estimate of a device to be positioned, as FIG. 30 The illustrated. The positioning and tracking system can be tuned based on the metrics indicating the confidence of the distance and / or AoA measurements to improve accuracy. The confidence of these measurements can be used to modify parameters of the positioning and tracking system in many ways, including but not limited to tuning the statistical error variance of one or more distance measurements, discarding one or more distance / AoA measurements, weighting distance / AoA measurements before input to the positioning system, etc.
[0261] The disclosure describes methods of taking into account measurement quality and / or measurement loss when generating positioning results.
[0262] In one embodiment, a figure of merit (FoM) or a confidence of the distance and AoA measurements can be indicated. The confidence (e.g., figure of merit) of the distance or AoA measurements conveys a quantification of the precision of the distance or angle measurements. The term FoM is used to refer to this quantification of the precision of the distance and / or angle measurements. Other terms conveying the same information are not excluded.
[0263] In one embodiment (S1), a peak of the channel impulse response is provided.
[0264] The FoM can be reported as a peak of the CIR. The CIR can be obtained after correlating the received signal with a local copy of the same signal for a particular predefined duration. The resulting peak can be used to indicate the confidence of the distance measurement or a figure of merit expressed as a FoM in decibels (dB). If there are N distance measurements available for positioning at time step k, the figure of merit (FoM) for sensor (or anchor or beacon, other terms are not excluded) i (1≤i≤N) is denoted by Many methods including but not limited to the following can be used to obtain the weighting.
[0265] In one example of normalization with the maximum value, the FoM can be normalized with the maximum value over all sensors (as shown in FIG. 30 maxp is the maximum value of the FoM over all sensors up to time step k; and maxp is the maximum value of the FoM over all sensors at step k only.
[0266] FIG. 30 A flowchart of a method 3000 for obtaining a weighting coefficient from a FoM indicated by a CIR peak by normalizing with the maximum value according to an embodiment of the disclosure is shown.
[0267] FIG. 30 The embodiments shown for obtaining the steps of the method 3000 are for illustration only. FIG. 30 One or more of the components shown can be implemented in dedicated circuits configured to perform the functions mentioned, or one or more of the components can be implemented by one or more processors executing instructions to perform the functions mentioned.
[0268] As shown in FIG. 31 The method 3000 includes obtaining, in step 3002, a CIR peak of the FoM of N distance measurements in dB for a time step k; converting the FoM to a linear scale in step 3004; and calculating a distance measurement weighting coefficient in step 3006.
[0269] FIG. 31 An example of a method 3100 for obtaining a weighting coefficient according to the FoM indicated by the CIR peak through weighted averaging of a function of the FoM according to an embodiment of the present disclosure is shown. FIG. 31 The illustrated embodiment of method 3100 for obtaining weighting coefficients is for illustration only. FIG. 31 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0270] You can FIG. 31 A weighted average of the FoM values is used as shown. FIG. 32 As shown, method 3100 includes: obtaining the CIR peak of the FoM as N distance measurement results in dB for time step k in step 3102; converting the FoM to a linear scale in step 3104; and calculating the distance measurement result weighting coefficient in step 3106.
[0271] FIG. 32 A flowchart of a method 3200 for obtaining a weighting coefficient according to the FoM indicated by a CIR peak by weighted averaging with memory according to an embodiment of the present disclosure is shown. FIG. 32 The illustrated embodiment of method 3200 for obtaining weighting coefficients is for illustration only. FIG. 32 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0272] exist FIG. 32 The weighted average with memory is shown in , which assumes that the distance measurement quality is continuous and therefore the FoM from each anchor point or sensor or beacon is relevant. FIG. 33 As shown, method 3200 includes: obtaining the CIR peak of the FoM as N distance measurement results in dB for time step k in step 3202; converting the FoM to a linear scale in step 3204; performing calculations in step 3206; and calculating the distance measurement result weighting coefficient in step 3208.
[0273] In one embodiment (S2), the first peak and the highest peak value of the channel impulse response are provided.
[0274] FIG. 33 An example of calculating a delay spread estimate 3300 using the FoM of the first peak and the highest peak according to an embodiment of the present disclosure is shown.FIG. 33 The illustrated embodiment of computing delay spread estimate 3300 is for illustration only. FIG. 33 One or more of the illustrated components can be implemented in special- purpose circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0275] The FoM of the first path, the FoM of the main path (highest peak), and the taps / difference between the two (as well as the resolution of the taps) can help obtain a coarse estimate of the channel delay spread. Consider FIG. 34 which shows computing delay spread estimate using the FoM of the first peak and the highest peak of the channel impulse response.
[0276] The delay spread estimate can be directly used to obtain the distance measurement bias or error statistics. One method to obtain it is by approximating the distance measurement bias according to an exponential distribution whose parameter is the computed delay spread estimate or a function of the delay spread estimate. This is used to obtain the weighting coefficients for the distance measurement error.
[0277] In one embodiment (S3), the channel impulse response is provided as the FoM. The channel impulse response (CIR) can be used to obtain an estimate of the delay spread. From the channel power delay profile A c (τ) (or CIR), wherein
[0278] FIG. 34 An example of obtaining distance measurement bias or error statistics 3400 using the CIR according to an embodiment of the disclosure is shown. FIG. 34 The illustrated embodiment of obtaining distance measurement bias or error statistics 3400 using the CIR is for illustration only. FIG. 34 One or more of the illustrated components can be implemented in special- purpose circuitry configured to perform the recited functions, or one or more of the illustrated components can be implemented by one or more processors executing instructions to perform the recited functions.
[0279] The delay spread can be used to classify the LOS and NLOS measurements. The delay spread estimate can be directly used to obtain the distance measurement bias or error statistics. One method to obtain it is by approximating the distance measurement bias according to an exponential distribution whose parameter is the computed delay spread estimate or a function of the delay spread estimate. This is used to obtain the weighting coefficients for the distance measurement error (such as FIG. 35 shown).
[0280] If the measured channel is LOS or NLOS, other test statistics similar to kurtosis or skewness of CIR can be used for inference. These test statistics are used to map CIR to FoM.
[0281] In one embodiment (S4), the received signal strength measurements are provided.
[0282] The received signal strength measurements can be used as FoM to obtain an estimate of the signal-to-noise ratio (SNR) for a given receiver noise floor. This SNR is then used to calculate the variance of the distance estimate, which is also the variance of the distance measurement error, using the equation where c is the speed of light and B is the signal bandwidth. This is used as a weighting factor or can be used directly as an estimate of the distance measurement error.
[0283] In one embodiment (S5), mapping FoM to the variance of the error measurement is provided.
[0284] FIG. 35 An example of a mapping function 3500 between FoM and the variance of the distance measurement error is shown, according to an embodiment of the disclosure. FIG. 35 The shown embodiment of the mapping function 3500 between FoM and the variance of the distance measurement error is for illustration only. FIG. 35 One or more of the shown components can be implemented in a dedicated circuit configured to perform the mentioned functions, or one or more of the shown components can be implemented by one or more processors executing instructions for performing the mentioned functions.
[0285] The mapping function can be used to map FoM or a function of FoM obtained via an arbitrary scheme to a discrete set of variances of distance measurement error. FIG. 36 An example of the mapping is shown in FIG. 3. This mapping is also used to generate weighting factors for distance measurements to be used in a positioning and tracking system.
[0286] In one embodiment, positioning and tracking using the confidence (or figure of merit) of distance measurements is provided.
[0287] The extended Kalman filter (EKF) state x t is modeled as where x, y, z are the position in 3 dimensions and is the rate of change of position in the respective 3 dimensions. The observation of the extended Kalman filter is the erroneous distance measurement represented by the vector where d t is the true distance and v tis the measurement error vector. Other models for EKF are possible, including but not limited to states (modeled as ), position, and velocity modeled through process noise. Other dynamics for modeling the localization and tracking using range measurements are not excluded.
[0288] FIG. 36 An example of a graph representation 3600 of localization with modified extended Kalman filter is shown in accordance with an embodiment of the disclosure. FIG. 36 The shown embodiment of graph representation 3600 of localization with modified extended Kalman filter is for illustration only. FIG. 36 One or more of the shown components can be implemented in a dedicated circuit configured to perform the mentioned functions, or one or more of the shown components can be implemented by one or more processors executing instructions for performing the mentioned functions.
[0289] As shown in FIG. 37 FoM information is included in the Kalman filter. While the described scheme is for extended Kalman filter, other implementations of Kalman filter with or without additional processing blocks (including but not limited to nonlinear least squares) with or without cascading of confidence of range-based localization and tracking are not excluded.
[0290] R is the measurement error covariance matrix. Typically, R is a diagonal matrix (unless error correlation between two sensors is known).
[0291] Let β t be a vector representing the weighting coefficients of the estimate or function of the measurement error. If the instantaneous error v k is known at each measurement, then the weighting coefficients can be the absolute value or square of the instantaneous error. If a function f(v t ) is known, then β k may represent the weighting coefficients accordingly.
[0292] A is the state transition model of the extended Kalman filter for 3D or 2D localization, P is the prediction error covariance matrix, Q is the process noise covariance, H is the Jacobian matrix, is the 3D vector of the position of anchor j, and K is referred to as the Kalman gain.
[0293] Prediction: and P t = AP t-1 A T + Q.
[0294] Update:
[0295]
[0296] According to The Jacobian matrix is computed.
[0297] The function relating to the distance measurement to the anchor position for the jth anchor is given by The function is
[0298] The Jacobian matrix is computed using the following equation:
[0299]
[0300] In some cases, the distance measurements are erroneous, and no measurement of one or more distances can be provided. As FIG. 37 shown, if the distance measurements are not available for any reason including but not limited to errors in the measurements, loss of measurement data, measurements not available, etc., the distance measurements from one or more anchors can be discarded. These cases are referred to as partial measurement loss (other nomenclature is not excluded).
[0301] FIG. 37 An example of distance measurements 3700 in partial measurement loss is shown for a positioning and tracking system according to embodiments of the disclosure. FIG. 37 The embodiment of distance measurements 3700 in partial measurement loss shown is for illustration only. FIG. 38 One or more of the components shown can be implemented in dedicated circuits configured to perform the functions mentioned, or one or more of the components shown can be implemented by one or more processors executing instructions to perform the functions mentioned.
[0302] Positioning and tracking systems are designed to be able to handle such partial measurement loss. An example of such a positioning system using an extended Kalman filter is described in the mentioned embodiments (e.g., S6). While the described solution is for an extended Kalman filter, other implementations of a Kalman filter with or without additional processing blocks (including but not limited to non-linear least squares) for positioning and tracking employing partial measurement loss of distance measurements with or without concatenation are not excluded.
[0303] In one embodiment (S6), an extended Kalman filter for positioning and tracking with partial measurement loss is provided.
[0304] The extended Kalman filter uses the current distance measurements to compute the “innovation” or measurement pre-fitting residual If a measurement for a particular anchor point is missing, innovation is computed for the remaining distance measurements and the innovation for the missing measurement is replaced with 0 for the current iteration step. FIG. 38 This example process is shown in . Note that the symbol and symbol Can be used interchangeably.
[0305] FIG. 38 A flow chart of a method 3800 for extending a Kalman filter when some measurements are lost according to an embodiment of the present disclosure is shown. FIG. 38 The illustrated embodiment of method 3800 is for illustration only. FIG. 38 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0306] like FIG. 39 As shown, method 3800 begins at step 3802. In step 3804, the method determines whether a stopping criterion has been met. In step 3804, if yes, method 3800 stops in step 3806. In step 3804, if no, method 3800 proceeds to step 3808. In step 3808, method 3800 performs prediction. In step 3810, method 3800 calculates the Jacobian matrix. In step 3812, method 3800 calculates the Kalman gain. In step 3814, method 3800 sets i = 1. In step 3816, method 3800 determines whether the measurement result for anchor point i is lost. In step 3816, if no, method 3800 proceeds to step 3820. In step 3816, if yes, method 3800 proceeds to step 3818. In step 3822, the method sets i = i + 1. In step 3824, method 3800 determines whether N is greater than or equal to i. In step 3824, if yes, method 3800 performs step 3816. In step 3824, if no, method 3800 performs step 3826. Method 3800 performs step 3828 and moves to step 3804.
[0307] Combining angle of arrival and range measurements for positioning and tracking systems improves accuracy. Both range measurements and angle of arrival can experience partial measurement loss. Angle of arrival information can be considered useful only in the case of LOS and is considered useless if the channel between the anchor point and the marker is NLOS, but other situations are not excluded. If the range measurement is unusable due to any reason including but not limited to errors in the measurement, measurement data loss, measurement unavailability, etc., the range measurement from one or more anchor points can be discarded. Although the described scheme is for an extended Kalman filter, other implementations of the Kalman filter with or without cascaded additional processing blocks (including but not limited to nonlinear least squares) for positioning and tracking that employ partial measurement loss of range measurements and AoA are not excluded.
[0308] In one embodiment (S7), an extended Kalman filter for positioning and tracking when range measurements and partial angle of arrival (AoA) measurements are lost is provided.
[0309] AoA is incorporated into the extended Kalman filter, and AoA and the rate of change of AoA are used in the state equation. In this scheme, an example of using AoA in the Z dimension is described, but it is not excluded to consider using AoA in other dimensions. The function mapping the Z coordinate and the pitch arrival angle is given by given.
[0310] The corresponding Jacobian matrix is calculated using the following equation:
[0311]
[0312] exist FIG. 40 An illustration of the flow chart of the extended Kalman filter incorporating AoA is shown in FIG. 1 , and an example calculation of the Jacobian matrix is shown in FIG. FIG. 39 shown.
[0313] FIG. 39 A flow chart of method 3900 for an extended Kalman filtering step (utilizing range measurements and AoA) according to an embodiment of the present disclosure is shown. FIG. 39 The embodiment of method 3900 shown is for illustration only. FIG. 39 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0314] like FIG. 40The method 3900 is shown to start at step 3902. In step 3904, the method determines if a stop criterion is reached. In step 3904, if yes, the method 3900 stops in step 3906. In step 3904, if no, the method 3900 performs step 3908. In step 3908, the method 3900 performs a prediction. In step 3910, the method 3900 computes a Jacobian matrix H t . In step 3912, the method 3900 computes a Kalman gain. In step 3914, the method 3900 computes an innovation. In step 3916, the method 3900 performs an update. In step 3818, the method 3900 updates a timing value, and then performs step 3904.
[0315] FIG. 40 A flowchart of a method 4000 for computing a Jacobian matrix for positioning with an extended Kalman filter considering range measurements and AoA, according to embodiments of the disclosure, is shown. FIG. 40 The embodiments of the method 4000 shown are for illustration. FIG. 40 One or more of the components shown can be implemented in specialized circuitry configured to perform the functions mentioned, or one or more of the components shown can be implemented by one or more processors executing instructions to perform the functions mentioned.
[0316] As FIG. 41 shown, the method 4000 computes a Jacobian matrix H t in step 4002. In step 4004, the method 4000 sets "i = 1". The method 4000 performs a computation in step 4006, and sets "i = i + 1" in step 4008. In step 4010, the method determines that the number of state variables is greater than or equal to i in step 4010. In step 4010, if yes, the method 4000 generates H t . In step 4010, if no, the method 4000 performs step 4006.
[0317] Partial loss of range measurements and AoA is incorporated when computing the innovation for the extended Kalman filter. The innovation for the anchor point is replaced by 0 when the measurements of both range and AoA are lost, while the innovation of the other terms is computed and fed into the step of the extended Kalman filter, as FIG. 41 shown.
[0318] FIG. 41 A flowchart of a method 4100 for computing an innovation for positioning with an extended Kalman filter considering partial loss of measurements in range measurements and AoA, according to embodiments of the disclosure, is shown. FIG. 41The embodiment of method 4100 shown is for illustration only. FIG. 41 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0319] like FIG. 42 As shown, method 4100 starts at step 4102. In step 4102, method 4100 determines "i=1". In step 4102, method 4100 determines that the measurement result of anchor point i is lost. In step 4104, if yes, method 4100 performs step 4106. Then method 4100 performs steps 4116 and 4118. In step 4104, if no, method 4100 performs step 4108. In step 4110, method 4100 determines that anchor point i is LOS. In step 4110, if no, method 4100 performs step 4112. In step 4110, if yes, method 4100 performs step 4114. In step 4120, method 4100 determines that N is greater than or equal to i. In step 4120, if no, method 4100 generates In step 4120 , if yes, method 4100 executes step 4104 .
[0320] Based on the loss of some measurement results, the distance measurement results of anchor point i at time step t are calculated separately and Even if the range measurement result from a specific anchor point is available, the AoA measurement result may not be available if the anchor point is not LOS. Other reasons for the partial loss of AoA measurement results cannot be ruled out.
[0321] FIG. 1 FIG. 4 shows an example of a method that can be used by a UE (eg, FIG. 42 111 to 116) shown in Figure 4200, a flowchart of method 4200 for cell-based positioning performed. FIG. 42 The embodiment of method 4200 shown is for illustration only. FIG. 42 One or more of the components shown may be implemented in dedicated circuits configured to perform the functions recited, or one or more of the components may be implemented by one or more processors executing instructions for performing the functions recited.
[0322] like As shown, the method 4200 starts at step 4202. In step 4202, the UE receives signals for positioning from multiple anchor nodes.
[0323] Then, in step 4204, the UE performs a ranging measurement on the signal based on a distance and an angle of arrival (AoA) of the signal.
[0324] Then, in step 4204, the UE determines whether at least one anchor node of the plurality of anchor nodes is not detected based on the ranging measurement.
[0325] Next, in step 4206, the UE determines whether at least one other anchor node of the plurality of anchor nodes is located on a line of sight (LOS) of the electronic device according to a determination that at least one anchor node is not detected based on the ranging measurement, wherein the LOS is determined based on the AoA of the signal.
[0326] Finally, in step 4208, the UE performs the positioning based on the at least one other anchor node.
[0327] In one embodiment, the UE discards a result of the ranging measurement on the signal if a result of the ranging measurement does not satisfy a condition determined based on a location of the tag within the positioning area.
[0328] In one embodiment, the UE identifies a set of extended Kalman filters (EKF) each including a different dynamic order based on the ranging measurement on the signal, and generates a first state estimate at a second time of a corresponding EKF of the set of EKFs based on the ranging measurement and a first state estimate at a first time, wherein the first state estimate at the first time is an input estimate value used to generate the first state estimate at the second time of the corresponding EKF of the set of EKFs.
[0329] In one embodiment, the UE calculates a probability of the first state estimate at the second time of the corresponding EKF of the set of EKFs based on a Markov chain including a transition probability between the set of EKFs; updates a model selection probability used to select one EKF of the set of EKFs using the calculated probability; and mixes the updated model selection probability with the first state estimate at the first time to generate the first state estimate at the second time.
[0330] In one embodiment, the UE combines a set of the first state estimates at the second time of the corresponding EKF of the set of EKFs based on the updated model selection probability, and generates a mixed state estimate based on the combined set of the first state estimates at the second time of the corresponding EKF of the set of EKFs.
[0331] In one embodiment, the UE selects one or more anchor nodes from the at least one anchor node based on a location and an accuracy threshold; performs a ranging measurement from a signal received from the selected one or more anchor nodes; and performs the positioning based on the ranging measurement.
[0332] In one embodiment, the UE identifies the accuracy threshold based on a predetermined accuracy threshold estimate, wherein the accuracy threshold is based on an accuracy metric comprising a function of the plurality of anchor nodes.
[0333] In one embodiment, the UE obtains a position of an anchor node of the at least one anchor node in a global coordinate system (GCS); identifies a maximum geometric dilution of precision (GDOP) threshold and a positioning mode comprising a one-dimensional positioning mode, a two-dimensional positioning mode, and a three-dimensional positioning mode; reduces a number of anchor nodes from the at least one anchor node based on the identified GDOP threshold and the identified positioning mode; and identifies an index of the reduced number of anchor nodes and a distance of the reduced number of anchor nodes operating in the positioning mode.
[0334] In one embodiment, the UE identifies a spatial region associated with the at least one anchor node or a set of anchor nodes for cell-based positioning; and generates a state map comprising a set of connected graphs configured based on a gridded spatial region associated with the at least one anchor node or the set of anchor nodes.
[0335] In one embodiment, the UE performs a ranging measurement on a signal from the at least one anchor node; updates a state probability based on a dynamic mode or a likelihood value calculated from the ranging measurement; and generates a confidence value indicating a probability of a position of a target anchor node of the at least one anchor node in a cell based on the likelihood value.
[0336] While this disclosure has been described with respect to the exemplary embodiments, it will occur to those skilled in the art that various changes and modifications can be made without departing from the scope of the claims. It is intended to cover all such changes and modifications that fall within the scope of the appended claims. The description in this application should not be interpreted as implying any particular order of elements or steps in the claims.
Claims
1. An electronic device for performing positioning in a wireless communication system, the electronic device comprising: a transceiver configured to receive signals for positioning from a plurality of anchor nodes; and a processor operably connected to the transceiver, the processor configured to: perform a ranging measurement on the signals based on a distance and an angle of arrival (AoA) of the signals; determine whether at least one anchor node of the plurality of anchor nodes is not detected based on the ranging measurement; based on a determination that the at least one anchor node is not detected based on the ranging measurement, obtain an estimated value of a delay spread based on a channel impulse response (CIR), and then determine whether at least one other anchor node of the plurality of anchor nodes is located in a line of sight (LOS) of the electronic device based on the estimated value of the delay spread, wherein the LOS is determined based on the AoA of the signals; and perform positioning based on the at least one other anchor node.
2. The electronic device of claim 1, wherein, the processor is further configured to discard a result of the ranging measurement on the signals if a condition determined based on a location of a tag in a positioning area is not satisfied by a result of the ranging measurement. 3.The electronic device of claim 1, wherein the processor is further configured to: identify a set of extended Kalman filters (EKFs) each including a different dynamic order based on the ranging measurement on the signals, and generate a first state estimate at a second time of a corresponding EKF of the set of EKFs based on the ranging measurement and a first state estimate at a first time; and the first state estimate at the first time is an input estimate value for generating the first state estimate at the second time.
4. The electronic device of claim 3, wherein, the processor is further configured to: calculate a probability of the first state estimate at the second time of a corresponding EKF of the set of EKFs based on a Markov chain including transition probabilities between the set of EKFs; and update a model selection probability for selecting one EKF of the set of EKFs using the calculated probability.
5. The electronic device of claim 4, wherein, the processor is further configured to: combine the set of first state estimates at the second time of the corresponding EKFs of the set of EKFs based on the updated model selection probability; and generate a hybrid state estimate based on the combined set of first state estimates at the second time of the corresponding EKFs of the set of EKFs.
6. The electronic device of claim 1, wherein, the processor is further configured to: select one or more anchor nodes from the plurality of anchor nodes based on locations of the plurality of anchor nodes, an estimated location of the electronic device, and an accuracy threshold for positioning; perform a ranging measurement from the signals received from the selected one or more anchor nodes; and perform positioning based on the ranging measurement. 7.The electronic device of claim 6, wherein the processor is further configured to identify the accuracy threshold based on a predetermined estimated accuracy threshold; and the accuracy threshold is based on an accuracy metric including a cost function of the plurality of anchor nodes.
8. The electronic device of claim 1, wherein, the processor is further configured to: identify a spatial region associated with the at least one other anchor node or a set of anchor nodes for anchor-based positioning; and generate a state map comprising a set of connected graphs configured based on a gridded spatial region based on the spatial region associated with the at least one other anchor node or the set of anchor nodes.
9. A method of an electronic device for performing positioning in a wireless communication system, the method comprising: receiving signals for positioning from a plurality of anchor nodes; performing ranging measurements on the signals based on a distance and an angle of arrival (AoA) of the signals; determining whether at least one anchor node of the plurality of anchor nodes is not detected based on the ranging measurements; based on a determination that the at least one anchor node is not detected based on the ranging measurements, obtaining an estimate of a delay spread based on a channel impulse response (CIR), and then determining whether at least one other anchor node of the plurality of anchor nodes is located in a line of sight (LOS) of the electronic device based on the AoA of the signals, wherein the LOS is determined based on the AoA of the signals; and performing positioning based on the at least one other anchor node.
10. The method of claim 9, further comprising: discarding a result of the ranging measurements on the signals if a result of the ranging measurements does not satisfy a condition determined based on a location of a tag in a positioning area.
11. The method of claim 9, further comprising: identifying a set of extended Kalman filters (EKF) each comprising a different dynamic order based on the ranging measurements on the signals; and generating a first state estimate at a second time of a corresponding EKF of the set of EKFs based on the ranging measurements and a first state estimate at a first time, wherein the first state estimate at the first time is an input estimate value used to generate the first state estimate at the second time.
12. The method of claim 11, further comprising: calculating a probability of the first state estimate at the second time of a corresponding EKF of the set of EKFs based on a Markov chain comprising transition probabilities between the set of EKFs; and updating a model selection probability used to select one EKF of the set of EKFs using the calculated probability.
13. The method of claim 12, further comprising: combining the set of first state estimates at the second time of a corresponding EKF of the set of EKFs based on the updated model selection probability; and generating a hybrid state estimate based on the combined set of first state estimates at the second time of a corresponding EKF of the set of EKFs.
14. The method of claim 9, further comprising: selecting one or more anchor nodes from the plurality of anchor nodes based on locations of the plurality of anchor nodes, an estimated location of the electronic device, and an accuracy threshold for positioning; performing ranging measurements from the signals received from the selected one or more anchor nodes; and performing positioning based on the ranging measurements.
15. The method of claim 14, further comprising: identifying the accuracy threshold based on a predetermined estimate accuracy threshold, wherein the accuracy threshold is based on an accuracy metric comprising a cost function of the plurality of anchor nodes.
Citation Information
Patent Citations
Detecting multipath and determining positioning measurement uncertainty
CN104798393A
Dynamic anchor network for a first responder situation
CN108351398A