Operation of anchor in cluster for ultra wide band communication
The method for dynamic anchor role assignment and cluster configuration in UWB communication systems addresses the need for optimized anchor performance in IoT environments by enabling adaptive and efficient anchor state transitions and cluster management, improving ranging and positioning accuracy.
Patent Information
- Application Number
- PCT/KR2023/011359
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-02
- Publication Date
- 2025-02-06
AI Technical Summary
In UWB communication systems, there is a need for efficient methods to assign and configure anchors within clusters to optimize performance, particularly in IoT environments where precise ranging and positioning are critical, but existing methods lack effectiveness in dynamically adapting to changing conditions and optimizing anchor roles.
The proposed solution involves a method for anchor operation in UWB communication clusters, where anchor devices can transition between states (stand-alone, global initiator, and responder) based on configuration information scans, with specific messages (CIM, CJRM, CJAM, CCRM, CCAM) facilitating dynamic cluster configuration and role assignment, enabling optimal anchor and cluster selection.
This approach allows for dynamic and optimal assignment of anchor roles within UWB communication clusters, enhancing the accuracy and efficiency of ranging and positioning services in IoT environments by ensuring that anchors are optimally configured and utilized, adapting to changing conditions.
Smart Images

Figure KR2023011359_06022025_PF_FP_ABST
Abstract
Description
Anchor behavior in a cluster for ultra-wideband communications
[0001] The present disclosure relates to UWB communication, and more particularly, to a method for operating an anchor in a cluster for UWB communication.
[0002] The Internet is evolving from a human-centric network where humans create and consume information to an Internet of Things (IoT) network where information is exchanged and processed between distributed components such as objects. The Internet of Everything (IoE) technology, which combines IoT technology with big data processing technology through connections to cloud servers, is also emerging. To implement the IoT, technological elements such as sensing technology, wired and wireless communication and network infrastructure, service interface technology, and security technology are required. Recently, technologies such as sensor networks for connecting objects, Machine-to-Machine (M2M) communication, and Machine-Type Communication (MTC) are being researched.
[0003] In an IoT environment, intelligent IT (Internet Technology) services can be provided that collect and analyze data generated from connected objects, creating new value in human life. IoT, through the convergence and integration of existing IT (information technology) technologies with various industries, can be applied to fields such as smart homes, smart buildings, smart cities, smart or connected cars, smart grids, healthcare, smart appliances, and advanced medical services.
[0004] As wireless communication systems advance, a variety of services become available, creating a need for effective solutions to deliver these services. For example, ranging technology, which measures the distance between electronic devices using Ultra Wide Band (UWB), can be used.
[0005] The present disclosure provides a method and apparatus for assigning roles of anchors and configuring clusters within a cluster for UWB communication.
[0006] According to one embodiment, a method of operating a first anchor device in a stand-alone (SA) state comprises: scan ) may include an operation of checking whether a configuration inform message (CIM) is received based on a scan result during the scan; an operation of performing ranging with a second anchor device that transmitted the CIM when the CIM is received based on the scan result; an operation of determining a cluster to which the first anchor device will join based on the ranging result; and an operation of transmitting a cluster join request message (CJRM) to an initiator anchor of the cluster.
[0007] According to one embodiment, the operating method of the first anchor device may further include an operation of changing the state of the first anchor device to a global initiator state if the CIM is not received according to the scan result.
[0008] According to one embodiment, the operating method of the first anchor device may further include: receiving a cluster join approve message (CJAM) corresponding to the CJRM from the initiator anchor; and changing a state of the first anchor device based on the CJAM.
[0009] According to one embodiment, a first anchor device in a stand-alone (SA) state includes a transceiver; and a controller. The controller comprises: a preset time (T scan ) to check whether a configuration inform message (CIM) is received based on the scan result, and if the CIM is received based on the scan result, ranging is performed with the second anchor device that transmitted the CIM, and a cluster to which the first anchor device is to join is determined based on the ranging result, and a cluster join request message (CJRM) is transmitted to the initiator anchor of the cluster.
[0010] Through the embodiments of the present disclosure, it is possible to assign an optimal anchor role and an optimal cluster within a cluster during UWB communication.
[0011] FIG. 1 illustrates an exemplary architecture of a UWB device according to an embodiment of the present disclosure.
[0012] FIG. 2 illustrates an exemplary configuration of a framework of a UWB device according to an embodiment of the present disclosure.
[0013] FIG. 3 illustrates a method for multiple electronic devices to perform communication according to an embodiment of the present disclosure.
[0014] FIG. 4 illustrates the structure of a UWB MAC frame according to an embodiment of the present disclosure.
[0015] FIG. 5 illustrates the structure of a UWB PHY packet according to an embodiment of the present disclosure.
[0016] FIG. 6 illustrates an example of the structure of a ranging block and round used for UWB ranging according to one embodiment of the present disclosure.
[0017] FIG. 7a schematically illustrates the operation of a DL-TDoA procedure according to an embodiment of the present disclosure.
[0018] FIG. 7b illustrates an exemplary message exchange operation of a DL-TDoA procedure according to an embodiment of the present disclosure.
[0019] FIG. 8 is a diagram schematically illustrating a method for constructing a multi-cluster chain for time synchronization according to an embodiment of the present disclosure.
[0020] FIG. 9a illustrates an example of a cluster configuration according to an embodiment of the present disclosure.
[0021] FIG. 9b illustrates another example of a cluster configuration according to an embodiment of the present disclosure.
[0022] FIG. 10 is a diagram for explaining a message scan operation of an anchor (SA) not included in a multi-cluster chain according to an embodiment of the present disclosure.
[0023] FIG. 11 is a diagram for explaining the operation of anchors (GI, I, R) included in a multi-cluster chain according to an embodiment of the present disclosure.
[0024] FIG. 12 illustrates an example of a ranging time resource structure for dynamic distributed clustering according to an embodiment of the present disclosure.
[0025] FIG. 13 is a flowchart for explaining the operation of an anchor in a stand-alone (SA) state according to an embodiment of the present disclosure.
[0026] FIG. 14 is a flowchart for explaining the operation of an anchor in a Global Initiator (GI) state according to an embodiment of the present disclosure.
[0027] FIG. 15 illustrates an example of a ranging round of an anchor in a Global Initiator (GI) state according to an embodiment of the present disclosure.
[0028] FIG. 16 is a flowchart for explaining the operation of an anchor in an Initiator (I) state according to an embodiment of the present disclosure.
[0029] FIG. 17 is a flowchart for explaining the operation of an anchor in a Responder (R) state according to an embodiment of the present disclosure.
[0030] Fig. 18 is a device diagram of an electronic device according to an embodiment of the present disclosure.
[0031] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings.
[0032] In describing the embodiments, descriptions of technical details that are well known in the technical field to which the present disclosure pertains and are not directly related to the present disclosure will be omitted. This is to more clearly convey the gist of the present disclosure without obscuring it by omitting unnecessary explanations.
[0033] For the same reason, some components in the attached drawings are exaggerated, omitted, or schematically depicted. Furthermore, the dimensions of each component do not entirely reflect its actual size. Identical or corresponding components in each drawing are assigned the same reference numbers.
[0034] The advantages and features of the present disclosure, and methods for achieving them, will become clearer with reference to the embodiments described below in detail together with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms. The embodiments of the present disclosure are provided only to make the present disclosure complete and to fully inform those skilled in the art of the scope of the disclosure, and the present disclosure is defined only by the scope of the claims. Like reference numerals refer to like elements throughout the specification.
[0035] At this time, it will be understood that each block of the processing flowchart drawings and combinations of the flowchart drawings can be performed by computer program instructions. These computer program instructions can be installed in a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing equipment, so that the instructions executed by the processor of the computer or other programmable data processing equipment create a means for performing the functions described in the flowchart block(s). These computer program instructions can also be stored in a computer-available or computer-readable memory that can direct a computer or other programmable data processing equipment to implement the functions in a specific manner, so that the instructions stored in the computer-available or computer-readable memory can also produce a manufactured item that includes an instruction means for performing the functions described in the flowchart block(s). Since the computer program instructions may be installed on a computer or other programmable data processing device, a series of operational steps may be performed on the computer or other programmable data processing device to create a computer-executable process, so that the instructions that cause the computer or other programmable data processing device to perform the steps for performing the functions described in the flowchart block(s) may also be able to provide steps for performing the functions described in the flowchart block(s).
[0036] Additionally, each block may represent a module, segment, or portion of code that contains one or more executable instructions for performing a specific logical function(s). It should also be noted that in some alternative implementation examples, the functions described in the blocks may occur out of order. For example, two blocks depicted in succession may actually be executed substantially concurrently, or the blocks may sometimes be executed in reverse order, depending on their respective functions.
[0037] Here, the term '~ unit' used in the present embodiment means software or hardware components such as FPGA (Field Programmable Gate Array) or ASIC (Application Specific Integrated Circuit), and the '~ unit' performs certain roles. However, the '~ unit' is not limited to software or hardware. The '~ unit' may be configured to be on an addressable storage medium and may be configured to play one or more processors. Accordingly, according to some embodiments, the '~ unit' includes components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functions provided within the components and '~ units' may be combined into a smaller number of components and '~ units' or further separated into additional components and '~ units'. Additionally, the components and '~parts' may be implemented to activate one or more CPUs within the device or secure multimedia card. Furthermore, according to some embodiments, the '~parts' may include one or more processors.
[0038] The term 'terminal' or 'device' used herein may refer to a mobile station (MS), user equipment (UE), user terminal (UT), wireless terminal, access terminal (AT), terminal, subscriber unit (SS), subscriber station (SS), wireless device, wireless communication device, wireless transmit / receive unit (WTRU), mobile node, mobile, or other terms. Various embodiments of the terminal may include a cellular telephone, a smart phone having a wireless communication function, a personal digital assistant (PDA) having a wireless communication function, a wireless modem, a portable computer having a wireless communication function, a photographing device such as a digital camera having a wireless communication function, a gaming device having a wireless communication function, a music storage and playback home appliance having a wireless communication function, an internet home appliance capable of wireless internet access and browsing, as well as portable units or terminals integrating combinations of such functions. In addition, the terminal may include, but is not limited to, an M2M (Machine to Machine) terminal, an MTC (Machine Type Communication) terminal / device. In this specification, the terminal may also be referred to as an electronic device or simply a device.
[0039] The operating principles of the present disclosure are described in detail below with reference to the attached drawings. In the following description of the present disclosure, detailed descriptions of related known functions or configurations will be omitted if they are deemed to unnecessarily obscure the gist of the present disclosure. Furthermore, the terms described below are defined based on the functions of the present disclosure and may vary depending on the intent or custom of the user or operator. Therefore, their definitions should be based on the overall content of this specification.
[0040] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. While the embodiments of the present disclosure will be described below using a communication system utilizing UWB as an example, the embodiments of the present disclosure may also be applied to other communication systems with similar technical backgrounds or characteristics. For example, these may include communication systems utilizing Bluetooth or Zigbee. Accordingly, the embodiments of the present disclosure may be applied to other communication systems with some modifications, as determined by a person skilled in the art, without significantly departing from the scope of the present disclosure.
[0041] Additionally, when describing the present disclosure, detailed descriptions of related functions or configurations will be omitted if they are deemed to unnecessarily obscure the gist of the present disclosure. Furthermore, the terms described below are defined based on the functions of the present disclosure and may vary depending on the intent or custom of the user or operator. Therefore, their definitions should be based on the contents of this specification.
[0042] Generally, wireless sensor network technologies are broadly categorized into Wireless Local Area Network (WLAN) and Wireless Personal Area Network (WPAN) technologies based on their sensing range. WLAN is a technology based on IEEE 802.11 that allows access to a backbone network within a radius of approximately 100 meters. WPAN, on the other hand, is a technology based on IEEE 802.15, and includes technologies such as Bluetooth, ZigBee, and ultra-wideband (UWB). A wireless network implementing these wireless network technologies may consist of multiple electronic devices.
[0043] According to the FCC (Federal Communications Commission) definition, UWB can refer to a wireless communication technology that uses a bandwidth of 500 MHz or more, or a bandwidth corresponding to a center frequency of at least 20%. UWB can also refer to the band itself in which UWB communications are applied. UWB enables secure and accurate ranging between devices. This allows for relative position estimation based on the distance between two devices, or precise position estimation of a device based on the distance from a fixed device (of known location).
[0044] Certain terms used in the following description are provided to aid in understanding the present disclosure, and the use of such specific terms may be changed to other forms without departing from the technical spirit of the present disclosure.
[0045] An "Application Dedicated File (ADF)" may be, for example, a data structure within an Application Data Structure that can host an application or application specific data.
[0046] "Application Protocol Data Unit (APDU)" may be a command and response used when communicating with the Application Data Structure within a UWB device.
[0047] The "application specific data" may be a file structure having a root level and an application level, for example, containing UWB control information and UWB session data required for a UWB session.
[0048] A "Controller" may be a Ranging Device that defines and controls Ranging Control Messages (RCM) (or control messages).
[0049] A "Controllee" may be a Ranging Device that utilizes the ranging parameters within the RCM (or control message) received from the Controller.
[0050] Unlike "Static STS," "Dynamic STS (Scrambled Timestamp Sequence) mode" can be an operating mode in which STS is not repeated during a ranging session. In this mode, STS is managed by the ranging device, and the ranging session key that generates the STS can be managed by the Secure Component.
[0051] An "Applet" may be, for example, an applet running on a Secure Component that includes UWB parameters and service data. In the present disclosure, the Applet may be a FiRa Applet defined by FiRa.
[0052] A "Ranging Device" may be a device capable of performing UWB ranging. In the present disclosure, the Ranging Device may be an Enhanced Ranging Device (ERDEV) defined in IEEE 802.15.4z or a FiRa Device defined by FiRa. The Ranging Device may be referred to as a UWB device.
[0053] A "UWB-enabled Application" may be an application for UWB services. For example, a UWB-enabled Application may be an application that utilizes a framework API for configuring an OOB Connector, a Secure Service, and / or a UWB service for a UWB session. In the present disclosure, a "UWB-enabled Application" may be abbreviated as an application or a UWB application. A UWB-enabled Application may be a FiRa-enabled Application defined by FiRa.
[0054] A "Framework" may be a component that provides access to a Profile, individual UWB settings, and / or notifications. A "Framework" may be a collection of logical software components, including, for example, a Profile Manager, an OOB Connector, a Secure Service, and / or a UWB Service. In the present disclosure, the Framework may be a FiRa Framework defined by FiRa.
[0055] An "OOB Connector" may be a software component for establishing an out-of-band (OOB) connection (e.g., a BLE connection) between Ranging Devices. In the present disclosure, the OOB Connector may be a FiRa OOB Connector defined by FiRa.
[0056] A "Profile" may be a predefined set of UWB and OOB configuration parameters. In the present disclosure, the Profile may be a FiRa Profile defined by FiRa.
[0057] A "Profile Manager" may be a software component that implements a profile available to a Ranging Device. In the present disclosure, the Profile Manager may be a FiRa Profile Manager defined by FiRa.
[0058] A "Service" can be an implementation of a use case that provides a service to an end-user.
[0059] A "Smart Ranging Device" may be a Ranging Device capable of implementing an optional Framework API. In the present disclosure, the Smart Ranging Device may be a FiRa Smart Device defined by FiRa.
[0060] A "Global Dedicated File (GDF)" may be the root level of application specific data containing the data required to establish a USB session.
[0061] The "Framework API" may be an API used by a UWB-enabled Application to communicate with the Framework.
[0062] An "Initiator" may be a Ranging Device that initiates a ranging exchange.
[0063] "Object Identifier (OID)" can be an identifier of ADF within the application data structure.
[0064] "Out-Of-Band (OOB)" may be data communication that does not use UWB as the underlying wireless technology.
[0065] "Ranging Data Set (RDS)" may be data (e.g., UWB session key, session ID, etc.) required to establish a UWB session whose confidentiality, authenticity, and integrity need to be protected.
[0066] A "Responder" may be a Ranging Device that responds to an Initiator in a ranging exchange.
[0067] "STS" may be a ciphered sequence to enhance the integrity and accuracy of ranging measurement timestamps. The STS may be generated from a ranging session key.
[0068] A "Secure Channel" may be a data channel that prevents overhearing and tampering.
[0069] A "Secure Component" may be an entity (e.g., an SE or TEE) with a defined security level that interfaces with the UWBS for the purpose of providing RDS to the UWBS, for example, when dynamic STS is used.
[0070] A "Secure Element (SE)" may be a tamper-resistant secure hardware component that can be used as a Secure Component within a Ranging Device.
[0071] "Secure Ranging" may be ranging based on STS generated through strong cryptographic operations.
[0072] A "Secure Service" may be a software component for interfacing with a Secure Component, such as a Secure Element or a Trusted Execution Environment (TEE).
[0073] A "Service Applet" may be an applet on a Secure Component that handles service-specific transactions.
[0074] "Service Data" may be data defined by the Service Provider that needs to be passed between two ranging devices to implement the service.
[0075] A "Service Provider" may be an entity that defines and provides the hardware and software required to provide a specific service to an end-user.
[0076] "Static STS mode" is an operating mode in which STS repeats during a session and does not need to be managed by the Secure Component.
[0077] The "Secure UWB Service (SUS) Applet" may be an applet on the SE that communicates with other ranging devices to retrieve the data necessary to enable a secure UWB session. The SUS Applet may also forward this data (information) to the UWB Service.
[0078] A "UWB Service" may be a software component that provides access to UWBS.
[0079] A "UWB Session" can be the period from when the Controller and Controllee start communicating via UWB until they stop communicating. A UWB Session can include ranging, data transfer, or both ranging and data transfer.
[0080] "UWB Session ID" may be an ID (e.g., a 32-bit integer) that identifies a UWB Session shared between the controller and the controller.
[0081] The "UWB Session Key" may be a key used to protect a UWB session. The UWB Session Key may be used to generate an STS. In the present disclosure, the UWB Session Key may be a UWB Ranging Session Key (URSK), and may be abbreviated as a session key.
[0082] The "UWB Subsystem (UWBS)" may be a hardware component that implements the UWB PHY and MAC layers (specifications). The UWBS may have an interface to the Framework and an interface to the Secure Component for discovering the RDS. In the present disclosure, the UWB PHY and MAC specifications may be, for example, the FiRa PHY and FiRa MAC specifications defined by FiRa, which references IEEE 802.15.4 / 4z.
[0083] A “UWB message” may be a message containing a payload IE transmitted by a UWB device (e.g., ERDEV).
[0084] A “ranging message” may be a message transmitted by a UWB device (e.g., ERDEV) in a UWB ranging procedure. For example, the ranging message may be a message such as a ranging initiation message (RIM), a ranging response message (RRM), a ranging final message (RFM), or a measurement report message (MRM) transmitted by a UWB device (e.g., ERDEV) in a specific phase of a ranging round. The ranging message may include one or more UWB messages. If necessary, multiple ranging messages may be merged into a single message. For example, in the case of non-deferred DS-TWR ranging, RFM and MRM may be merged into a single message in the ranging final phase.
[0085] “Payload IE” may be called Payload Information Element and may be included in the MAC payload of the UWB MAC frame defined in IEEE 802.15.4 / 4z. The MAC payload may include multiple Payload IEs.
[0086] "Data Transfer IE" may be an additional payload IE for transmitting application data. The application data may be data transmitted from a framework or application above the UWB MAC Layer. The Data Transfer IE may be used in a procedure in which the Initiator and the Responder range with each other. In this case, the ranging message may include at least one or both of the payload IE for ranging and the Data Transfer IE for transmitting application data. For example, the Data Transfer IE may be transmitted as part of the payload IE of the MAC payload of a Ranging Initiation Message (RIM), a Ranging Response Message (RRM), a Ranging Final Message (RFM), a Measurement Report Message (MRM), and a Ranging Result Report Message (RRRM). The Data Transfer IE can also be delivered as a payload IE in the MAC payload of a DTM. For example, the Data Transfer IE can be delivered in addition to the DTM payload IE in the MAC payload portion of a Poll DTM, Response DTM, or Final DTM.
[0087] The "UWB channel" may be one of the candidate UWB channels allocated for UWB communication. The candidate UWB channels allocated for UWB communication may be channels allocated for UWB communication defined in IEEE 802.15.4 / 4z. The UWB channel may be used for UWB ranging and / or transactions. For example, the UWB channel may be used for transmitting and receiving ranging frames (RFRAME) and / or transmitting and receiving data frames.
[0088] An "NB (narrow band) channel" may be a channel having a narrower bandwidth than a UWB channel. In an embodiment, the NB channel may be a subchannel of one of candidate UWB channels allocated for UWB communication. The candidate UWB channels allocated for UWB communication may be channels allocated for UWB communication as defined in IEEE 802.15.4 / 4z. The NB channel may be used for connection establishment for advertising, device discovery, and / or additional parameter negotiation / authentication. For example, the NB channel may be used for transmitting and receiving advertisement messages, additional advertising messages, connection request messages, and / or connection confirmation messages.
[0089] "One-way ranging (OWR)" may be a ranging method that utilizes the time difference of arrival (TDoA) localization method. The TDoA method is a method for locating a mobile device (tagged device) based on the relative arrival times of a single message or multiple messages. For a description of OWR (TDoA), refer to the description in IEEE 802.15.4z. An example of an OWR method may include the Uplink (UL)-TDoA method.
[0090] “Two-way ranging (TWR)” may be a ranging method that can estimate the relative distance between two devices by measuring the time of flight (ToF) through the exchange of ranging messages between the two devices. The TWR method may be either double-sided two-way ranging (DS-TWR) or single-sided two-way ranging (SS-TWR). SS-TWR may be a procedure that performs ranging through a single round-trip time measurement. DS-TWR may be a procedure that performs ranging through two round-trip time measurements. For a description of SS-TWR and DS-TWR, please refer to the description of IEEE 802.15.4z.
[0091] “DL-TDoA” may be called Downlink Time Difference of Arrival (DL-TDoA), reverse TDoA, and when multiple anchor devices broadcast messages or exchange messages with each other, the basic operation may be for a user device (tag device) to overhear the messages of the anchor devices. A user device performing DL-TDoA operation may overhear messages transmitted by two anchor devices and calculate a Time Difference of Arrival (TDoA) proportional to the difference in distance between each anchor device and the user device. The user device may use the TDoA with multiple pairs of anchor devices to calculate the relative distance to the anchor devices and use it for positioning. The operation of the anchor device for DL-TDoA may be similar to the DS-TWR (Double Side-Two Way Ranging) defined in IEEE 802.15.4z, and may further include other useful time information so that the user device can calculate the TDoA. In the present disclosure, DL-TDoA may be referred to as DL-TDoA localization.
[0092] An "Anchor device" may be called an anchor, UWB anchor, or UWB anchor device, and may be a UWB device deployed in a specific location to provide positioning services. For example, an anchor device may be a UWB device installed by a service provider on an indoor wall, ceiling, structure, etc. to provide indoor positioning services. Anchor devices may also be classified as Initiator anchors or Responder anchors depending on the order and role of message transmission.
[0093] The "Initiator anchor" may be referred to as the Initiator UWB anchor, Initiator anchor device, etc., and may signal the start of a specific ranging round. The Initiator anchor may also schedule ranging slots in which Responder anchors operating in the same ranging round respond. The initiation message of the Initiator anchor may be referred to as the Initiator DTM (Downlink TDoA Message) or Poll message. The initiator message may include a transmission timestamp. The Initiator anchor may additionally transmit a finalization message after receiving responses from Responder anchors. The finalization message of the Initiator anchor may be referred to as the Final DTM or Final message. The finalization message may include a reply time for the messages sent by Responder anchors. The finalization message may include a transmission timestamp.
[0094] A "Responder anchor" may be referred to as a Responder UWB anchor, a Responder UWB anchor device, or a Responder anchor device. A Responder anchor may be a UWB anchor that responds to an initiator anchor's initiation message. The message to which the Responder anchor responds may include a response time to the initiation message. The message to which the Responder anchor responds may be referred to as a Responder DTM, a Response message. The Responder anchor's response message may also include a transmission timestamp.
[0095] A "Cluster" may refer to a set of UWB anchors covering a specific area. A cluster may consist of an initiator UWB anchor and responder UWB anchors that respond to it. Typically, one initiator UWB anchor and at least two responder UWB anchors are required for 2D positioning, and one initiator UWB anchor and at least three responder UWB anchors are required for 3D positioning. If the initiator UWB anchor and responder UWB anchors can accurately time synchronize with separate wired / wireless connections, one initiator UWB anchor and two responder UWB anchors are required for 2D positioning, and one initiator UWB anchor and three responder UWB anchors are required for 3D positioning. Unless otherwise stated, it is assumed that there is no separate wired / wireless initiator device between the UWB anchors. The area of a cluster may be the space formed by the UWB anchors that constitute the cluster. To support positioning services over a wide area, multiple clusters can be configured to provide positioning services to user devices. In this disclosure, a cluster may also be referred to as a cell. In this disclosure, the operation of a cluster can be understood as the operation of the anchor(s) belonging to the cluster.
[0096] An "active ranging round" may be a ranging round that operates in an active state. In an active ranging round, anchor devices may exchange DL-TDoA messages, and tag devices (user devices) may overhear messages transmitted by anchor devices. In the present disclosure, an active ranging round may be referred to as an active round.
[0097] An "in-active ranging round" may be a ranging round that operates in an in-active state or a sleep state. In an in-active ranging round, anchor devices do not exchange DL-TDoA messages, and tag devices (user devices) may be in a sleep state. In the present disclosure, an in-active ranging round may be referred to as a sleep ranging round, an in-active round, or a sleep round.
[0098] A "reference clock" can be referred to as a common clock that allows the anchors (DT-anchors) and tags (DT-tags) that make up the downlink TDoA system to operate in sync with the initiator, and for the DT-tags to obtain accurate TDoA values. DT-anchors and DT-tags are different terminals and operate with different crystal oscillators, so there may be slight clock speed differences, and the clock origins may be different due to different power supply points. Therefore, a mechanism to maintain the same clock throughout the system is required, and this can be called synchronization. Synchronization between components within a cluster can be referred to as intra-cluster synchronization, and the operation in which multiple Responder anchors that make up a cluster synchronize with the clock of the Initiator anchor of the same cluster can be referred to as intra-cluster synchronization. The task of aligning the initiators between adjacent clusters can be called inter-cluster synchronization, and the operation of maintaining the same ranging block structure between the initiator anchors of adjacent clusters can be called inter-cluster synchronization. Within a cluster, the clock of the initiator anchor can be the reference clock, and throughout the system, the clock of a specific initiator anchor can be the reference clock.
[0099] A "global controller" may be a UWB terminal capable of setting the operating order, cluster structure, and reference clock of the DT anchors that constitute a downlink TDoA system. The global controller may be one of the DT anchors, and multiple global controllers may exist within the same system.
[0100] In addition, when explaining the present disclosure, if it is determined that a specific description of a related public notice function or configuration may unnecessarily obscure the gist of the present disclosure, the detailed description is omitted.
[0101] Various embodiments of the present disclosure are described below with reference to the attached drawings.
[0102] FIG. 1 illustrates an exemplary architecture of a UWB device according to an embodiment of the present disclosure.
[0103] In the present disclosure, the UWB device (100) may be an electronic device supporting UWB communication. The UWB device (100) may be, for example, a Ranging Device supporting UWB ranging. In one embodiment, the Ranging Device may be an Enhanced Ranging Device (ERDEV) defined in IEEE 802.15.4z or a FiRa Device defined by FiRa.
[0104] In the embodiment of FIG. 1, a UWB device (100) can interact with another UWB device through a UWB session.
[0105] Additionally, the UWB device (100) may implement a first interface (Interface #1), which is an interface between a UWB-enabled application (110) and a UWB Framework (120), and the first interface allows the UWB-enabled application (110) on the UWB device (100) to use the UWB capabilities of the UWB device (100) in a predetermined manner. In one embodiment, the first interface may be, but is not limited to, a Framework API or a proprietary interface.
[0106] Additionally, the UWB device (100) may implement a second interface (Interface #2), which is an interface between the UWB Framework (110) and the UWB subsystem (UWBS) (130). In one embodiment, the second interface may be, but is not limited to, the UWB Command Interface (UCI) or a proprietary interface.
[0107] Referring to FIG. 1, a UWB device (100) may include a UWB-enabled Application (110), a Framework (UWB Framework) (120), and / or a UWBS (130) including a UWB MAC Layer and a UWB Physical Layer. Depending on the embodiment, some entities may not be included in the UWB device, or additional entities (e.g., a security layer) may be included.
[0108] The UWB-enabled Application (110) can trigger the establishment of a UWB session by the UWBS (130) using the first interface. In addition, the UWB-enabled Application (110) can use one of the predefined profiles. For example, the UWB-enabled Application (110) can use one of the profiles defined in FiRa or a custom profile. The UWB-enabled Application (110) can handle related events such as service discovery, ranging notifications, and / or error conditions using the first interface.
[0109] The Framework (120) may provide access to the Profile, individual UWB settings, and / or notifications. In addition, the Framework (120) may support at least one of the following functions: a function for performing UWB ranging and transactions, a function for providing an interface to an application and a UWBS (130), or a function for estimating the location of the device (100). The Framework (120) may be a collection of software components. As described above, a UWB-enabled Application (110) may interface with the Framework (120) via a first interface, and the Framework (120) may interface with the UWBS (130) via a second interface.
[0110] Meanwhile, in the present disclosure, the UWB-enabled Application (110) and / or Framework (120) may be implemented by an application processor (AP) (or processor). Therefore, in the present disclosure, the operations of the UWB-enabled Application (110) and / or Framework (120) may be understood to be performed by the AP (or processor). In the present disclosure, the Framework may be referred to as an AP or a processor.
[0111] The UWBS (130) may be a hardware component including a UWB MAC Layer and a UWB Physical Layer. The UWBS (130) may perform UWB session management and communicate with the UWBS of another UWB device. The UWBS (130) may interface with the Framework (120) through a second interface and obtain secure data from the Secure Component. In one embodiment, the Framework (or application processor) (120) may transmit a command to the UWBS (130) through UCI, and the UWBS (130) may transmit a response to the command to the Framework (120). The UWBS (130) may also transmit a notification to the Framework (120) through UCI.
[0112] FIG. 2 illustrates an exemplary configuration of a framework of a UWB device according to an embodiment of the present disclosure.
[0113] The UWB device of FIG. 2 may be an example of the UWB device of FIG. 1.
[0114] Referring to FIG. 2, the Framework (220) may include software components such as, for example, a Profile Manager (221), an OOB Connector(s) (222), a Secure Service (223), and / or a UWB Service (224).
[0115] The Profile Manager (221) may be responsible for managing profiles available on the UWB device. Here, a profile may be a set of parameters required to establish communication between UWB devices. For example, the profile may include parameters indicating which OOB secure channel is used, UWB / OOB configuration parameters, parameters indicating whether the use of a specific security component is mandatory, and / or parameters related to the file structure of the ADF. The UWB-enabled Application (210) may communicate with the Profile Manager (221) via a first interface (e.g., Framework API).
[0116] The OOB Connector (222) may serve to establish an OOB connection with another device. The OOB Connector (222) may handle an OOB phase, including a discovery phase and / or a connection phase. An OOB component (e.g., a BLE component) (250) may be connected to the OOB Connector (222).
[0117] Secure Service (223) can perform the role of interfacing with Secure Component (240) such as SE or TEE.
[0118] The UWB Service (224) can perform the role of managing the UWBS (230). By implementing the second interface, the UWB Service (224) can provide access from the Profile Manager (221) to the UWBS (230).
[0119] FIG. 3 illustrates a method for multiple electronic devices to perform communication according to an embodiment of the present disclosure.
[0120] The first electronic device (301) and the second electronic device (302) of FIG. 3 may be, for example, the UWB device of FIG. 1 or FIG. 2.
[0121] Referring to FIG. 3, the first electronic device (301) and the second electronic device (302) can perform a device discovery / connection establishment procedure (310) and a data communication procedure (320). The device discovery / connection establishment procedure (310) and the data communication procedure (320) can be managed or controlled by a MAC layer (entity) of the electronic device.
[0122] (1) Device search / connection setup procedure
[0123] In the present disclosure, the device discovery / connection setup procedure (310) may be a pre-procedure performed prior to the data communication procedure (320). As an example, the device discovery / connection setup procedure (310) may be performed via OOB communication (channel), NB communication (channel), and / or UWB communication (channel).
[0124] The device discovery / connection setup procedure (310) may include at least one of the following operations.
[0125] - Device discovery operation: An operation in which an electronic device searches for (discovers) another UWB device. The device discovery operation may include an operation of transmitting / receiving an Advertisement message. In the present disclosure, the device discovery operation may be referred to as a discovery operation or an advertising operation.
[0126] - Connection establishment operation: An operation in which two electronic devices establish a connection. The connection establishment operation may include an operation in which a connection request message and a connection confirmation message are transmitted / received. The connection (channel) established through the connection establishment operation may be used to establish and control a UWB session for data communication. For example, parameters for establishing a UWB session (e.g., UWB performance parameters (control performance parameters), UWB configuration parameters, session key related parameters) may be negotiated between the two electronic devices through a secure channel established through the connection establishment operation.
[0127] (2) Data communication procedures
[0128] In the present disclosure, the data communication procedure (320) may be a procedure for transmitting and receiving data using UWB communication. As an example, the data communication procedure may be performed using UWB communication or NB communication.
[0129] The data communication procedure (320) may include at least one of the following operations.
[0130] - UWB ranging operation: An operation in which an electronic device performs UWB ranging with another electronic device using a preset UWB ranging method (e.g., OWR, SS-TWR, DS-TWR method). As an example, the UWB ranging operation may include a ToF measurement operation and / or an AoA measurement operation.
[0131] - Transaction operation: An operation in which an electronic device exchanges service data with another electronic device.
[0132] FIG. 4 illustrates the structure of a UWB MAC frame according to an embodiment of the present disclosure.
[0133] In the embodiment of FIG. 4, the UWB MAC frame may follow the structure of the MAC frame of, for example, IEEE 802.15.4z. In the present disclosure, the UWB MAC frame may be abbreviated as a MAC frame or frame. As an embodiment, the UWB MAC frame may be used to transmit UWB data (e.g., a UWB message, a ranging message, control information, service data, application data, transaction data, etc.).
[0134] Referring to FIG. 4, a UWB MAC frame may include a MAC header (MHR), a MAC payload, and / or a MAC footer (MFR).
[0135] (1) MAC header
[0136] The MAC header may include a Frame Control field, a Sequence Number field, a Destination Address field, a Source Address field, an Auxiliary Security Header field, and / or at least one Header IE field. Depending on the embodiment, some fields may not be included in the MAC header.
[0137] As an example, the Frame Control field may include a Frame Type field, a Security Enabled field, a Frame Pending field, an AR field, a PAN ID Compression field, a Sequence Number Suppression field, an IE Present field, a Destination Addressing Mode field, a Frame Version field, and / or a Source Addressing Mode field. A description of each field is as follows.
[0138] The Frame Type field may indicate the type of the frame. In an embodiment, the type of the frame may include a data type and / or a Multipurpose type.
[0139] The Security Enabled field may indicate whether an Auxiliary Security Header field exists. The Auxiliary Security Header field may contain information required for security processing.
[0140] The Frame Pending field can indicate whether the device transmitting the frame has more data for the recipient. In other words, the Frame Pending field can indicate whether there are pending frames for the recipient.
[0141] The AR field may indicate whether acknowledgment of reception of the frame is required from the receiver.
[0142] The PAN ID Compression field may indicate whether a PAN ID field is present.
[0143] The Sequence Number Suppression field can indicate whether a Sequence Number field exists. The Sequence Number field can indicate a sequence identifier for the frame.
[0144] The IE Present field can indicate whether the Header IE field and the Payload IE field are included in the frame.
[0145] The Destination Addressing Mode field may indicate whether the Destination Address field contains a short address (e.g., 16 bits) or an extended address (e.g., 64 bits). The Destination Address field may indicate the address of the recipient of the frame.
[0146] The Frame Version field can indicate the frame version. For example, the Frame Version field can be set to a value indicating IEEE std 802.15.4z-2020.
[0147] The Source Addressing Mode field may indicate whether a Source Address field is present, and if present, whether the Source Address field contains a short address (e.g., 16 bits) or an extended address (e.g., 64 bits). The Source Address field may indicate the address of the originator of the frame.
[0148] (2) MAC payload
[0149] The MAC payload may include at least one Payload IE field. In an embodiment, the Payload IE field may include a Vendor Specific Nested IE. In an embodiment, the Payload IE field may include a Payload IE field of a UWB message, a ranging message, or a control message.
[0150] (3) MAC footer
[0151] The MAC footer may contain an FCS field. The FCS field may contain a 16-bit CRC or a 32-bit CRC.
[0152] FIG. 5 illustrates the structure of a UWB PHY packet according to an embodiment of the present disclosure.
[0153] Fig. 5(a) illustrates an exemplary structure of a UWB PHY packet to which STS packet settings are not applied, and Fig. 5(b) illustrates an exemplary structure of a UWB PHY packet to which STS packet settings are applied. In the present disclosure, a UWB PHY packet may be referred to as a PHY packet, a PHY PDU (PPDU), or a frame.
[0154] Referring to FIG. 5(a), a PPDU may include a synchronization header (SHR), a PHY header (PHR), and a PHY payload (PSDU). A PSDU includes a MAC frame, and as in FIG. 4, the MAC frame may include a MAC header (MHR), a MAC payload, and / or a MAC footer (MFR). In the present disclosure, the synchronization header part may be referred to as a preamble, and the part including the PHY header and PHY payload may be referred to as a data part.
[0155] The synchronization header is used for synchronization for signal reception and may include a SYNC field and a start-of-frame delimiter (SFD).
[0156] The SYNC field may be a field containing multiple preamble symbols used for synchronization between transmitting and receiving devices. The preamble symbols may be set using one of the predefined preamble codes.
[0157] The SFD field may be a field indicating the end of the SHR and the start of the data field.
[0158] The PHY header can provide information about the structure of the PHY payload. For example, the PHY header can include information about the length of the PSDU, information indicating whether the current frame is RFRAME, etc.
[0159] Meanwhile, the PHY layer of a UWB device may include an optional mode to provide reduced on-air time for high-density / low-power operation. In this case, the UWB PHY packet may include an encrypted sequence (i.e., STS) to increase the integrity and accuracy of the ranging measurement timestamp. The STS may be included in the STS field of the UWB PHY packet and may be used for secure ranging.
[0160] Referring to FIG. 5(b), when the STS packet (SP) setting is 0 (SP0), the STS field is not included in the PPDU (SP0 packet). When the SP setting is 1 (SP1), the STS field is located immediately after the Start of Frame Delimiter (SFD) field and before the PHR field (SP1 packet). When the SP setting is 2 (SP2), the STS field is located after the PHY payload (SP2 packet). When the SP setting is 3 (SP3), the STS field is located immediately after the SFD field, and the PPDU does not include the PHR and data fields (PHY payload) (SP3 packet). That is, in the case of SP3, the PPDU does not include the PHR and PHY payload.
[0161] In the embodiment of FIG. 5(b), each UWB PHY packet may include an RMARKER for defining a reference time, and the RMARKER may be used to obtain a transmission time, reception time, and / or time interval of a ranging message (frame) in a UWB ranging procedure.
[0162] FIG. 6 illustrates an example of the structure of a ranging block and round used for UWB ranging according to one embodiment of the present disclosure.
[0163] In the present disclosure, a ranging block refers to a time period for ranging. A ranging round may be a period of sufficient duration to complete one entire ranging-measurement cycle (ranging cycle) involving a set of UWB devices participating in a ranging exchange. A ranging slot may be a period of sufficient duration to transmit at least one ranging frame (RFRAME) (e.g., ranging initiation / response / final message, etc.).
[0164] As in FIG. 6, one ranging block may include at least one ranging round, and each ranging round may include at least one ranging slot.
[0165] Meanwhile, if the ranging mode is block-based, the mean time between consecutive ranging rounds can be constant. Alternatively, if the ranging mode is interval-based, the time between consecutive ranging rounds can be dynamically changed. That is, the interval-based mode can adopt a time structure with adaptive spacing.
[0166] The number of slots included in a ranging round and its duration may change between ranging rounds.
[0167] In the present disclosure, ranging blocks, ranging rounds, and ranging slots may be abbreviated as blocks, rounds, and slots, respectively.
[0168] FIG. 7a schematically illustrates the operation of a DL-TDoA procedure according to an embodiment of the present disclosure.
[0169] Referring to FIG. 7A, in operation 710, DT anchor 1 (700-1), which is an initiator DL-TDoA (DT) anchor, may initiate a DT procedure by transmitting a Poll message (Poll DTM). According to one embodiment, the Poll message (Poll DTM) may include response schedule information of responder DT anchors (e.g., schedule information in units of ranging slots).
[0170] In operation 720, the responder DT anchors DT Anchor 2 to DT Anchor N (700-2,…, 700-N) may transmit a response message (responder DTM). In an embodiment, the responder DT anchor may determine whether to transmit a response message and / or a ranging slot to be used for transmitting the response message based on schedule information included in the Poll message. In an embodiment, the response message may include information about a first response time (β). Here, the first response time may be the time taken for the responder DT anchor to receive the initiation message and transmit the response message corresponding to the initiation message.
[0171] At step 730, DT anchor 1 (700-1) may terminate the DT procedure by transmitting a final DTM message. As an example, the final DTM message may include information regarding a second response time (γ). The second response time may be the time taken by the initiator DT anchor to receive the response message and transmit the final DTM message.
[0172] In one embodiment, the transmission of the final message (Final DTM) of operation 730 may be omitted, and operations 710 and 720 may be performed similarly to the SS-TWR operation.
[0173] As illustrated in FIG. 7A, the DT tag (701) can receive (or overhear) initiation messages, response messages, and termination messages exchanged between DT anchors (700-1,…,700-N) and obtain (find out) a TDoA curve. The DT tag (701) can obtain a TDoA result by repeatedly performing the process on signals received from, for example, three or more DT anchors.
[0174] In operation 740, the DT tag (701) can obtain a relative position with respect to the DT anchor based on the TDoA result. According to one embodiment, the DT tag (701) can calculate TDoA for each (initiator, responder) pair and obtain (position) a relative position with respect to the DT anchor.
[0175] FIG. 7b illustrates an exemplary message exchange operation of a DL-TDoA procedure according to an embodiment of the present disclosure.
[0176] Referring to FIG. 7b, a ranging block for DL-TDoA may include multiple ranging rounds.
[0177] As an example, a ranging block may include multiple ranging rounds allocated to each cluster. For example, when n clusters are deployed, a ranging block may include a first ranging round (ranging round #0) allocated to a first cluster (cluster #0), a second ranging round (ranging round #1) allocated to a second cluster (cluster #1), ..., and an n-th ranging round allocated to an n-th cluster. Meanwhile, although not shown in FIG. 7b,
[0178] In one embodiment, multiple ranging rounds may be assigned to a single cluster, or multiple clusters may be assigned to a single ranging round.
[0179] As described above, a cluster may refer to a set of DT anchors (UWB anchors) covering a specific area. A cluster may be composed of an initiator DT anchor and responder DT anchors that respond to it. The area of a cluster may be a space formed by the UWB anchors that constitute the cluster. In order to support positioning services for a wide area, multiple clusters may be configured to provide positioning services to user devices. In the present disclosure, a cluster may be referred to as a cell. In the present disclosure, the operation of a cluster may be understood as the operation of anchor(s) belonging to the cluster.
[0180] A ranging round may include multiple ranging slots. In one embodiment, a ranging round may include multiple ranging slots allocated for each ranging message transmitted by UWB anchors belonging to a cluster associated with the ranging round.
[0181] For example, as in FIG. 7a, if one cluster includes one Initiator DT anchor and three Responder DT anchors, a ranging round for the first cluster may include a first ranging slot allocated for transmitting / receiving a Poll message of the Initiator DT anchor included in the first cluster, a second ranging slot allocated for transmitting / receiving a response message of the first Responder DT anchor, a third ranging slot allocated for transmitting / receiving a response message of the second Responder DT anchor, a fourth ranging slot allocated for transmitting / receiving a response message of the third Responder DT anchor, and a fifth ranging slot allocated for transmitting / receiving a final message of the Initiator DT anchor. In an embodiment, a period other than a duration during which an associated ranging message is transmitted in a corresponding ranging slot may be a sleep period.
[0182] In this way, ranging slots can be allocated to ranging rounds for each cluster.
[0183] Through a ranging block structure like the embodiment of FIG. 7b, each cluster can exchange its ranging messages (e.g., Poll / Response / Final messages) once within a ranging block, and a DT tag (user device) can receive these ranging messages and calculate its own position. This operation can be repeated for each ranging block. Through this, the position of the user device within the corresponding cluster can be updated according to the ranging block cycle. Therefore, in the embodiment of FIG. 7b, the ranging block can correspond to a cycle for positioning updates.
[0184] FIG. 8 is a diagram schematically illustrating a method for constructing a multi-cluster chain for time synchronization according to an embodiment of the present disclosure.
[0185] The embodiment of FIG. 8 may be an example of a multi-cluster chain configuration for time synchronization.
[0186] Referring to FIG. 8, a ranging block N may include multiple ranging rounds, and among the multiple ranging rounds, ranging round #0 may be allocated for cluster #0, ranging round #1 may be allocated for cluster #1, ranging round #2 may be allocated for cluster #2, ranging round #3 may be allocated for cluster #3, and ranging round #4 may be allocated for cluster #4.
[0187] As an example, the initiator of cluster #0 associated with the first ranging round (ranging round #0) of ranging block N may transmit scheduling information. As an example, the initiator of cluster #0 may operate as a global initiator.
[0188] Each anchor that receives scheduling information can determine its operating time and role based on the scheduling information. This allows anchors to perform message exchange operations for DL-TDoA (e.g., Poll message, Response message, and / or Final message exchange operations) according to their respective roles in the corresponding ranging round.
[0189] Referring to Figure 8, the operation of anchors in each cluster is described as follows.
[0190] <Actions of Anchors in Cluster #0>
[0191] The initiator of cluster #0 can send a Poll message containing scheduling information.
[0192] The remaining anchors in cluster #0 receive a Poll message from the initiator and can identify their role as a responder based on the scheduling information contained in the Poll message. Furthermore, one anchor in cluster #0 can identify that it performs multiple roles.
[0193] Each responder can transmit a Response message corresponding to the Poll message to the initiator in the ranging slot allocated to it. As an example, information about the ranging slot allocated to each responder can be included in the Poll message. For example, information about the ranging slot allocated to each responder can be included in the Ranging Device Management List field included in the Poll message.
[0194] The Initiator can send Final messages corresponding to Response messages from responders.
[0195] Meanwhile, one of the responders in cluster #0 can perform multiple roles. For example, one of the responders in cluster #0 can perform the role of responder in the current ranging round (ranging round #0), but can perform the role of initiator in the next ranging round (ranging round #1). Ranging (DL-TDoA) in the next ranging round can be initiated by this responder performing multiple roles.
[0196] <Actions of Anchors in Cluster #1>
[0197] The initiator of cluster #1 can send a Poll message. As described above, the initiator of cluster #1, as a multi-role anchor, served as a responder in ranging round #0 (the previous ranging round) of cluster #0. In an embodiment, the Poll message may include scheduling information.
[0198] The remaining anchors (responders) in cluster #1 can receive a Poll message from the initiator and transmit a Response message corresponding to the Poll message to the initiator in the ranging slot allocated to them. In an embodiment, information about the ranging slot allocated to each responder can be included in the Poll message.
[0199] The Initiator can send Final messages corresponding to Response messages from responders.
[0200] Meanwhile, one of the responders in cluster #1 can perform multiple roles. For example, one of the responders in cluster #1 can perform the role of responder in the current ranging round (ranging round #1), but can perform the role of initiator in the next ranging round (ranging round #2). Ranging (DL-TDoA) in the next ranging round can be initiated by this responder performing multiple roles.
[0201] <Operations in the remaining clusters>
[0202] In the remaining clusters, each anchor can perform message exchange operations for DL-TDoA ranging according to its own operation time and role indicated by the scheduling information, similar to the operation in cluster #1.
[0203] The multi-cluster configuration of the embodiment of FIG. 8 corresponds to a multi-cluster chain configuration. Accordingly, one anchor within a cluster is configured to perform multiple roles. This multi-cluster chain configuration enables both intra-cluster and inter-cluster initiation. In one embodiment, the same time structure (ranging block structure) can be shared among all anchors within the multi-cluster configuration.
[0204] FIG. 9a illustrates an example of a cluster configuration according to an embodiment of the present disclosure.
[0205] Referring to FIG. 9A, a first initiator anchor (901), a first responder anchor (903), a second responder anchor (905), and a third responder anchor (907) can form a first cluster. A third responder anchor (907) in the first cluster can operate as a second initiator anchor (907) in the second cluster. A second initiator anchor (907), a first responder anchor (903), a fourth responder anchor (909), and a fifth responder anchor (911) can form a second cluster. However, the embodiment is not limited thereto, and the number of clusters can vary, and the number of anchors included in each cluster can also vary.
[0206] Depending on the embodiment, all anchors within the effective transmission / reception range of the initiator anchor can potentially become responder anchors. Depending on the embodiment, clusters can be configured in various ways to spatially reuse time resources (e.g., ranging rounds) in the DL-TDoA system.
[0207] FIG. 9b illustrates another example of a cluster configuration according to an embodiment of the present disclosure.
[0208] Referring to FIG. 9B, a first initiator anchor (921), a first responder anchor (923), a second responder anchor (925), and a third responder anchor (927) can form a first cluster. The third responder anchor (927) in the first cluster can operate as a second initiator anchor (927) in the second cluster, and the first initiator anchor (921) in the first cluster can operate as a sixth responder anchor (921) in the second cluster.
[0209] A second initiator anchor (927), a first responder anchor (923), a second responder anchor (925), a fourth responder anchor (929), a fifth responder anchor (931), and a sixth responder anchor (921) may constitute a second cluster. However, the embodiment is not limited thereto, and the number of clusters may vary, and the number of anchors included in each cluster may also vary.
[0210] Meanwhile, as DL-TDOA positioning performance varies depending on cluster configuration, the need for infrastructure optimization algorithms is emerging. The greater the difference between the actual distance between anchors (especially between the initiator and responder) and the UWB ranging value, the lower the DL-TDOA positioning performance. Therefore, infrastructure configuration can take this into account. Manually configuring infrastructure is time-consuming and costly, and positioning performance cannot be guaranteed. Furthermore, the number of target anchors can significantly increase the number of possible configurations. Furthermore, because radio wave radiation angles vary depending on the anchor, it can be difficult to visually predict the ranging quality between anchors.
[0211] When the number of anchors in a cluster is large, a centralized approach that calculates the optimal configuration for all anchors can be computationally complex and consume significant communication resources between the computation server and each anchor. Furthermore, the computation server must have prior knowledge of all target anchor information and must also update it when changes occur. This necessitates the use of distributed and dynamic algorithms for infrastructure optimization. Distributed and dynamic algorithms offer the advantage of easily adapting to environmental changes and enabling rapid response to changes in indoor structures, obstacles, and anchor failures.
[0212] In this disclosure, a distributed algorithm for UWB DL-TDOA anchor clustering is proposed. In one embodiment, the distributed algorithm for UWB DL-TDOA anchor clustering may set or define the state of each anchor as Stand-alone (SA), Global initiator (GI), Initiator (I), or Responder (R). In this disclosure, an anchor in Stand-alone (SA) state may not be included in a cluster and may join an optimal cluster through ranging with neighboring anchors, or may directly operate as a Global initiator (GI) within the cluster.
[0213] According to one embodiment, in a distributed algorithm for UWB DL-TDOA anchor clustering, a Configuration inform message (CIM), a Configuration change request message (CCRM), a Configuration change approve message (CCAM), a Cluster join request message (CJRM), and a Cluster join approve message (CJAM) may be set or defined. According to one embodiment, at least one of the CIM, the CCRM, the CCAM, the CJRM, and the CJAM may be transmitted and received through a UWB in-band channel or a Narrow-band (NB) channel.
[0214] According to one embodiment, when at least one of the CIM, the CCRM, the CCAM, the CJRM, and the CJAM is transmitted and received through a UWB in-band channel, the messages can be implemented vendor-specifically by utilizing a reserved field in a control field based on FiRa MAC 2.0.
[0215] According to one embodiment, the CIM (configuration inform message) may be configured as shown in Table 1.
[0216] [Table 1]
[0217]
[0218] According to one embodiment, the cluster join request message (CJRM) may be configured as shown in Table 2.
[0219] [Table 2]
[0220]
[0221] According to one embodiment, the cluster join approve message (CJAM) may be configured as shown in Table 3.
[0222] [Table 3]
[0223]
[0224] According to one embodiment, the CCRM (configuration change request message) may be configured as shown in Table 4.
[0225] [Table 4]
[0226]
[0227] According to one embodiment, the CCAM (configuration change approve message) may be configured as shown in Table 4.
[0228] [Table 5]
[0229]
[0230] According to one embodiment, the Anchor attribute fields described in Tables 1 to 5 may be configured as in Table 6.
[0231] [Table 6]
[0232]
[0233] According to one embodiment, the Ranging resource structure attribute field described in Table 1 may be configured as shown in Table 7.
[0234] [Table 7]
[0235]
[0236] According to one embodiment, the Network configuration attribute fields described in Table 1, Table 4, and Table 5 may be configured as in Table 8.
[0237] [Table 8]
[0238]
[0239] According to one embodiment, the Cluster attribute fields described in Table 3 and Table 8 may be configured as in Table 9.
[0240] [Table 9]
[0241]
[0242] According to one embodiment, the Ranging attribute field described in Table 1 may be configured as in Table 10.
[0243] [Table 10]
[0244]
[0245] FIG. 10 is a diagram for explaining a scan operation of an anchor (SA) not included in a multi-cluster chain according to an embodiment of the present disclosure.
[0246] In a distributed algorithm for UWB DL-TDOA anchor clustering, an anchor (SA) set or defined in a Stand-alone (SA) state can scan for configuration inform messages (CIM) in the surroundings for a preset period of time.
[0247] Referring to Fig. 10, the scan time for the CIM of the anchor (SA) can be set as _scan=(α+β)×, where α is the scan duration and β can be the sleep duration.
[0248] In one embodiment, if a CIM scan result indicates that a neighboring cluster exists, the anchor (SA) may join the cluster after performing ranging with the neighboring anchor. At this time, the anchor (SA) may send a Cluster Join Request Message (CJRM) to the neighboring anchor to join the cluster, and in response, receive a Cluster Join Approve Message (CJAM) from the neighboring anchor.
[0249] In one embodiment, if a CIM scan reveals no surrounding clusters, an anchor (SA) can create a cluster. At this point, the anchor's status can change from SA to Global Initiator (GI). The anchor can then change its status to the initiator of the created cluster and broadcast a CIM.
[0250] FIG. 11 is a diagram for explaining the operation of anchors (GI, I, R) included in a multi-cluster chain according to an embodiment of the present disclosure.
[0251] In a distributed algorithm for UWB DL-TDOA anchor clustering, anchors (GI, I, R) set or defined as Global initiator (GI), Initiator (I), or Responder (R) state can periodically broadcast CIM.
[0252] Referring to FIG. 11, the average CIM broadcast period can be set to r (where r<α). Here, α is a scan duration, and α+β can be a scan interval. In one embodiment, when transmitting CIM based on contention, the CIM broadcast period may not be constant. In one embodiment, an anchor in the Responder (R) state can selectively transmit a CIM at every CIM period. In one embodiment, an anchor (GI, I, R) can transmit a CIM in a scheduled ranging slot or a contention-based time slot.
[0253] In one embodiment, each anchor (GI, I, R) belonging to a cluster can perform periodic or aperiodic ranging with neighboring anchors.
[0254] In one embodiment, each anchor (GI, I, R) belonging to a cluster can determine whether changes are necessary for its cluster and role based on CIM or ranging results exchanged with neighboring anchors, or based on CIM and ranging results. In one embodiment, each anchor (GI, I, R) can utilize collectable information to calculate the suitability of its role.
[0255] In one embodiment, if an anchor (GI, I, R) determines that its role needs to be changed, it may request the change by sending a Configuration Change Request Message (CCRM). In one embodiment, upon receiving the CCRM, the anchor (GI, I, R) may relay the CCRM to other anchors in the cluster to which it currently belongs (multicasting within the cluster).
[0256] In one embodiment, when an anchor (I) in the Initiator (I) state receives a CCRM or CJRM, it may transmit a CCAM or CJAM including the clusters and roles of anchors (including the anchor that requested the request). In one embodiment, an anchor (R) in the Responder (R) state may ignore the CCRM or CJRM message even if it receives it.
[0257] FIG. 12 illustrates an example of a ranging time resource structure for dynamic distributed clustering according to an embodiment of the present disclosure.
[0258] The ranging time resource structure for dynamic distributed clustering illustrated in Fig. 12 may be referred to as a superframe structure.
[0259] Referring to FIG. 12, a superframe may be composed of a contention-free ranging block and a contention-based ranging period. In one embodiment, the resource structure of the ranging block may be configured based on the FiRa MAC specification.
[0260] A ranging block contains effective ranging rounds, and the effective ranging rounds are the first ranging round (ranging round#1), the second ranging round (ranging round#2), …, Nth. R Ranging Round #N R ) may be included. For example, the Nth R Ranging Round #N R ) may include a first ranging slot (slot#1), a second ranging slot (slot#2), a third ranging slot (slot#3), etc.
[0261] In a contention-based ranging period, ranging can be performed between all anchor pairs, assuming at least one CIM as a ranging poll message. In this case, all ranging methods (OWR, SS-TWR, DS-TWR, and / or eSS-TWR) can be applied.
[0262] In one embodiment, the scan duration (α) may be set to be greater than the length of a superframe.
[0263] FIG. 13 is a flowchart for explaining the operation of an anchor in a stand-alone (SA) state according to an embodiment of the present disclosure.
[0264] Referring to Figure 13, in operation 1301, the anchor in the Stand-alone (SA) state is set for a set time (T scan ) can scan CIM during operation 1303. In the SA state, the anchor can check whether there is a received CIM based on the scan result.
[0265] If there is a received CIM according to the scan result (1303-YES), in operation 1305, the anchor in SA state can perform ranging with at least one anchor (sender) that transmitted at least one CIM. In operation 1307, the anchor in SA state can calculate and / or determine the best cluster to join. In operation 1309, the anchor in SA state can transmit a CJRM to the initiator anchor of the best cluster to join. In operation 1311, the anchor in SA state can check whether a CJAM corresponding to the CJRM has been received.
[0266] If the CJAM corresponding to the CJRM is received (1311-YES), the anchor in the SA state in operation 1313 can change its state according to the received CJAM. If the CJAM corresponding to the CJRM is not received (1311-NO), the anchor in the SA state in operation 1309 can retransmit the CJRM to the initiator anchor of the best cluster to join.
[0267] If no CIM is received based on the scan result (1303-NO), the anchor in SA state can change its state to global initiator (GI) in operation 1315.
[0268] FIG. 14 is a flowchart for explaining the operation of an anchor in a Global Initiator (GI) state according to an embodiment of the present disclosure.
[0269] Referring to FIG. 14, in operation 1401, an anchor in the Global Initiator (GI) state can sleep (or wait) until the next starting time of a ranging round. In operation 1403, an anchor in the GI state can check whether the current time is within an active ranging round scheduled for the anchor.
[0270] If the current point in time is within an active ranging round (1403-YES), the anchor in the GI state in action 1405 can transmit a POLL message. The anchor in the GI state in action 1407 can listen for reserved RESP messages. The anchor in the GI state in action 1409 can optionally transmit a FINAL message.
[0271] If the current point in time is not within an active ranging round (1403-NO), the anchor in GI state in action 1411 can determine whether a CIM transmission cycle has arrived. If a CIM transmission cycle has arrived (1411-YES), the anchor in GI state in action 1413 can broadcast a CIM. The anchor in GI state in action 1415 can check whether at least one cluster management related message has been received.
[0272] If the CIM transmission cycle has not arrived (1411-NO), the anchor in the GI state in operation 1415 can check whether at least one cluster management related message has been received.
[0273] If at least one cluster management related message is received (1415-YES), the anchor in the GI state can process the process and response messages in operation 1417. After that, the anchor in the GI state can perform operation 1411 again. If at least one cluster management related message is not received (1415-NO), the anchor in the GI state can perform operation 1401 again.
[0274] FIG. 15 illustrates an example of a ranging round of an anchor in a Global Initiator (GI) state according to an embodiment of the present disclosure.
[0275] Referring to FIG. 15, the CIM broadcast average period is set to r (where r<α), α is the scan duration, and α+β may be the scan interval. The ranging round may include an active ranging round scheduled by the anchor and an inactive ranging round that is not scheduled.
[0276] FIG. 16 is a flowchart for explaining the operation of an anchor in an Initiator (I) state according to an embodiment of the present disclosure.
[0277] Referring to FIG. 16, in operation 1601, an anchor in the Initiator (I) state can sleep (or wait) until the next starting time of a ranging round. In operation 1603, an anchor in the I state can check whether the current time is within an active ranging round scheduled for the anchor. If the current time is within an active ranging round (1603-YES), in operation 1605, an anchor in the I state can determine whether it is a Responder in the current ranging round. If the anchor in the I state is a Responder in the current ranging round (1605-YES), in operation 1607, an anchor in the I state can receive a POLL message. In operation 1609, an anchor in the I state can transmit a RESP message. In operation 1611, an anchor in the I state can optionally receive a FINAL message.
[0278] An anchor in state I may transmit a POLL message in action 1613 if it is not a Responder in the current ranging round (1605-NO). An anchor in state I may listen to reserved RESP messages in action 1615. An anchor in state I may optionally transmit a FINAL message in action 1617.
[0279] If the current point in time is not within an active ranging round (1603-NO), the anchor in state I in operation 1619 can determine whether a CIM transmission cycle has arrived. If a CIM transmission cycle has arrived (1619-YES), the anchor in state I in operation 1621 can broadcast a CIM. The anchor in state I in operation 1623 can check whether at least one cluster management related message has been received.
[0280] If the CIM transmission cycle has not arrived (1619-NO), the anchor in state I in operation 1623 can check whether at least one cluster management related message has been received.
[0281] If at least one cluster management related message is received (1623-YES), the anchor in state I can process the process and response messages in operation 1625. After that, the anchor in state I can perform operation 1619 again. If at least one cluster management related message is not received (1623-NO), the anchor in state I can perform operation 1601 again.
[0282] FIG. 17 is a flowchart for explaining the operation of an anchor in a Responder (R) state according to an embodiment of the present disclosure.
[0283] Referring to FIG. 17, in operation 1701, an anchor in the Responder (R) state can sleep (or wait) until the next starting time of a ranging round. In operation 1703, an anchor in the R state can check whether the current time is within an active ranging round scheduled for the anchor.
[0284] If the current point in time is within an active ranging round (1703-YES), the anchor in the R state in operation 1705 can receive a POLL message. The anchor in the R state in operation 1707 can transmit a RESP message on the scheduled ranging slot. The anchor in the R state in operation 1709 can optionally receive a FINAL message.
[0285] If the current point in time is not within an active ranging round (1703-NO), the anchor in the R state in action 1711 can determine whether a CIM transmission cycle has arrived. If a CIM transmission cycle has arrived (1711-YES), the anchor in the R state in action 1713 can broadcast a CIM. The anchor in the R state in action 1715 can check whether at least one cluster management related message has been received.
[0286] If the CIM transmission cycle has not arrived (1711-NO), the anchor in the R state in operation 1715 can check whether at least one cluster management related message has been received.
[0287] If at least one cluster management related message is received (1715-YES), the anchor in the R state in operation 1717 can process the process and response messages. After that, the anchor in the R state can perform operation 1711 again. If at least one cluster management related message is not received (1715-NO), the anchor in the R state can perform operation 1701 again.
[0288] Fig. 18 is a device diagram of an electronic device according to an embodiment of the present disclosure.
[0289] In the embodiment of FIG. 18, the electronic device may be implemented as a UWB device described above in FIGS. 1 to 17, an anchor device in a Stand-alone (SA) state, an anchor device in a Global initiator (GI) state, an anchor device in an Initiator (I) state, or an anchor device in a Responder (R) state.
[0290] Referring to FIG. 18, the electronic device may include a transceiver (1810), a control unit (1820), and a storage unit (1830). In the present disclosure, the control unit may be defined as a circuit or an application-specific integrated circuit or at least one processor.
[0291] The transceiver (1810) can transmit and receive signals with other entities. The transceiver (1810) can transmit and receive data with other UWB devices using, for example, NB communication, UWB communication, or OOB communication (e.g., BLE communication).
[0292] The control unit (1820) can control the overall operation of an anchor device in a Stand-alone (SA) state, an anchor device in a Global initiator (GI) state, an anchor device in an Initiator (I) state, or an anchor device in a Responder (R) state according to an embodiment proposed in the present disclosure. For example, the control unit (1820) can control the signal flow between each block to perform the operations described with reference to FIGS. 1 to 17.
[0293] The storage unit (1830) can store at least one of the information transmitted and received through the transmission and reception unit (1810) and the information generated through the control unit (1820). For example, the storage unit (1830) can store information and data required for the method described with reference to FIGS. 1 to 17.
[0294] According to one embodiment, a method of operating a first anchor device in a stand-alone (SA) state comprises: scan ) may include an operation of checking whether a configuration inform message (CIM) is received based on a scan result during the scan; an operation of performing ranging with a second anchor device that transmitted the CIM when the CIM is received based on the scan result; an operation of determining a cluster to which the first anchor device will join based on the ranging result; and an operation of transmitting a cluster join request message (CJRM) to an initiator anchor of the cluster.
[0295] According to one embodiment, the operating method of the first anchor device may further include an operation of changing the state of the first anchor device to a global initiator state if the CIM is not received according to the scan result.
[0296] According to one embodiment, the operating method of the first anchor device may further include: receiving a cluster join approve message (CJAM) corresponding to the CJRM from the initiator anchor; and changing a state of the first anchor device based on the CJAM.
[0297] According to one embodiment, the CIM may include at least one of a message type indicating a type of the CIM, an anchor attribute including information about an anchor transmitting the CIM, a ranging resource structure attribute to be applied to the anchor, a network configuration attribute regarding a cluster set, and a ranging attribute including ranging values of surrounding anchors.
[0298] According to one embodiment, the CJRM may include at least one of a message type indicating a type of the CJRM, and a ranging attribute including an anchor attribute including information about an anchor transmitting the CJRM.
[0299] According to one embodiment, the CJAM may include at least one of a message type indicating a type of the CJAM, an anchor attribute including information about an anchor transmitting the CJAM, and a cluster attribute including cluster configuration information.
[0300] According to one embodiment, the operating method of the first anchor device may further include: when it is determined that a role change of the first anchor device is necessary based on the CIM and the ranging result, transmitting a configuration change request message (CCRM); and receiving a configuration change approve message (CCAM) corresponding to the CCRM.
[0301] According to one embodiment, the CCRM may include at least one of a message type indicating a type of the CCRM, an anchor attribute including information about an anchor transmitting the CCRM, and a network configuration attribute including target network configuration information.
[0302] According to one embodiment, the CCAM may include at least one of a message type indicating a type of the CCAM, an anchor attribute including information about an anchor transmitting the CCAM, and a network configuration attribute including changed network configuration information.
[0303] In the specific embodiments of the present disclosure described above, components included in the present disclosure are expressed in the singular or plural form, depending on the specific embodiment presented. However, the singular or plural expressions are selected to suit the presented situation for convenience of explanation, and the present disclosure is not limited to singular or plural components. Components expressed in the plural form may be composed of singular elements, or components expressed in the singular form may be composed of plural elements.
[0304] While the detailed description of this disclosure has described specific embodiments, it should be understood that various modifications are possible without departing from the scope of this disclosure. Therefore, the scope of this disclosure should not be limited to the described embodiments, but should be defined not only by the scope of the claims described below, but also by equivalents thereof.
Claims
1. In the operating method of the first anchor device in the SA (stand-alone) state, Preset time (T scan ) Action to check whether a CIM (configuration inform message) is received based on the scan results during the scan; An operation of performing ranging with the second anchor device that transmitted the CIM upon receiving the CIM according to the scan result; An operation of determining a cluster to which the first anchor device will join based on the ranging result; and A method characterized by including an action of transmitting a cluster join request message (CJRM) to an initiator anchor of the above cluster.
2. In paragraph 1, A method characterized by further including an action of changing the state of the first anchor device to a global initiator state if the CIM is not received according to the scan result.
3. In paragraph 1, An operation of receiving a cluster join approve message (CJAM) corresponding to the CJRM from the initiator anchor; and A method further comprising an operation of changing a state of the first anchor device based on the CJAM.
4. In paragraph 1, the CIM, A method characterized by including a message type indicating the type of the CIM, an anchor attribute including information about an anchor transmitting the CIM, a ranging resource structure attribute to be applied to the anchor, a network configuration attribute regarding a cluster set, and a ranging attribute including ranging values of surrounding anchors.
5. In paragraph 1, the CJRM, A method characterized by including a message type indicating the type of the CJRM, and a ranging attribute including an anchor attribute including information about an anchor transmitting the CJRM.
6. In the third paragraph, the CJAM, A method characterized by including a message type indicating the type of the CJAM, an anchor attribute including information about an anchor transmitting the CJAM, and a cluster attribute including cluster setting information.
7. In paragraph 1, When it is determined that a role change of the first anchor device is necessary based on the CIM and ranging results, an operation of transmitting a CCRM (configuration change request message); and A method further comprising an action of receiving a CCAM (configuration change approve message) corresponding to the CCRM.
8. In paragraph 7, the CCRM, A method characterized by including a message type indicating the type of the CCRM, an anchor attribute including information about an anchor transmitting the CCRM, and a network configuration attribute including target network configuration information.
9. In paragraph 7, the CCAM, A method characterized by including a message type indicating the type of the CCAM, an anchor attribute including information about an anchor transmitting the CCAM, and a network configuration attribute including changed network configuration information.
10. In the first anchor device in the SA (stand-alone) state, transceiver; and comprising a controller, said controller comprising: Preset time (T scan ) to check whether CIM (configuration inform message) is received based on the scan results during the scan. When the CIM is received according to the above scan results, ranging is performed with the second anchor device that transmitted the CIM, Based on the above ranging result, the first anchor device determines the cluster to join, A device characterized by controlling transmission of a cluster join request message (CJRM) to an initiator anchor of the above cluster.
11. In the 10th paragraph, the controller, A device characterized in that, if the CIM is not received according to the scan result, the state of the first anchor device is changed to a global initiator state.
12. In paragraph 10, the controller, Receive a CJAM (cluster join approve message) corresponding to the above CJRM from the initiator anchor, A device characterized by changing the state of the first anchor device based on the CJAM.
13. In paragraph 10, the CIM, A device characterized by including a message type indicating the type of the CIM, an anchor attribute including information about an anchor transmitting the CIM, a ranging resource structure attribute to be applied to the anchor, a network configuration attribute regarding a cluster set, and a ranging attribute including ranging values of surrounding anchors.
14. In paragraph 10, the CJRM, A device characterized by including a message type indicating the type of the CJRM, and a ranging attribute including an anchor attribute including information about an anchor transmitting the CJRM.
15. In paragraph 10, the controller, If it is determined that a change in the role of the first anchor device is necessary based on the above CIM and the ranging result, control is provided to transmit a CCRM (configuration change request message), A device characterized by receiving a CCAM (configuration change approve message) corresponding to the above CCRM.
Citation Information
Patent Citations
Organic compound and electroluminescent device comprising the same
KR1020240064162A
An experimental system for generating mud permeation films and its technique for measuring mud permeation effectiveness
KR1020240174436A
Cluster configuration systems and methods
US20120005164A1
Many-to-many communication techniques for mobile devices
US20210400441A1
Method for calculating location and electronic device therefor
US20220174626A1