UWB-based device usage restrictions
By transmitting ultra-wideband signals between devices to determine the device location and establishing a usage license based on the location, the problems of insufficient fine-grained indoor device location tracking and difficulty in implementing strategies are solved, and high-precision position tracking and dynamic function permission management are realized.
Patent Information
- Application Number
- CN202210249961.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-03-17
- Filing Date
- 2022-03-15
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2042-03-15
AI Technical Summary
The prior art is difficult to perform fine-grained device location tracking indoors and cannot effectively implement location-based network policies.
The current location of the device is determined by transmitting an ultra-wideband signal between devices and establishing a location-based usage license for the device based on that location.
It realizes high-precision equipment position tracking indoors and dynamically adjusts its functional usage permissions according to the equipment position, solving the problems of insufficient fine-grained position tracking and difficulty in implementing strategies in the existing technology.
Smart Images

Figure CN114978570B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to computer technology, and more particularly to technology for limiting the use of ultra-wideband-based devices. Background Art
[0002] Currently, most modern electronic devices are not equipped with features that allow sufficiently fine-grained location tracking indoors. Likewise, accurately enforcing location-based network policies indoors is often difficult or nearly impossible. There is currently no adequate solution to the above-mentioned computer-related technical problems. Summary of the invention
[0003] The technical problem to be solved by the embodiments of the present disclosure is to provide a device and method for determining the current location of a device based on an ultra-wideband (UWB) signal transmitted between devices, and establishing a location-based usage permission for the device based on the current location, which at least solves the problem in the prior art that it is impossible to perform sufficiently fine-grained device location tracking indoors.
[0004] In order to solve the problem that the prior art cannot track the location of a device with sufficient granularity indoors, the embodiments of the present disclosure provide an apparatus and method for determining the current location of a device based on an ultra-wideband signal transmitted between devices, and establishing a location-based usage permission for the device based on the current location. The technical solution is described as follows.
[0005] In one aspect, an embodiment of the present application provides a device. The device includes at least one processor and a memory accessible by the at least one processor for storing instructions, wherein the memory stores instructions that can be executed by the at least one processor to determine the current location of one or more devices of the first device and the second device based on at least one ultra-wideband signal transmitted between the first device and the second device. The instructions can also be executed to establish one or more location-based usage permissions for one or more devices of the first and second devices based on the current location.
[0006] In some embodiments, the apparatus further comprises an ultra-wideband transceiver accessible by the at least one processor, the ultra-wideband transceiver being configured to transmit or receive the ultra-wideband signal.
[0007] In some embodiments, the apparatus includes the first device, and the instructions are executed to: determine the current location of the second device based on the ultra-wideband signal sent by the second device and received by the first device; and establish one or more of the location-based usage permissions for the second device based on the current location of the second device determined from the ultra-wideband signal.
[0008] In some embodiments, the first device is composed of one or more of the following: a router, an access device, an ultra-wideband beacon, and a smart home hub device.
[0009] In some embodiments, the first device consists of a personal computer that is different from the second device.
[0010] In some embodiments, the device consists of a server.
[0011] In some embodiments, the apparatus includes the second device, and wherein the instructions are executed to: establish, at the second device, one or more of the location-based usage permissions for the second device based on the current location of the second device.
[0012] In some embodiments, the one or more location-based usage permissions relate to one or more specific functions that are allowed in a first room within a building but not allowed in a second room within the same building, and the current location of the second device corresponds to the second location.
[0013] In some embodiments, the location-based geographic area of usage permission is established based on a perimeter of a room of a building traversed by one or more of the first and second devices.
[0014] In some embodiments, the geographic area of location-based usage permission is established based on one or more of the first and second devices traversing an area, at least a portion of which is associated with a room of a building.
[0015] In some embodiments, the one or more location-based usage permissions restrict Internet access such that end-user tasks other than video conferencing cannot access the Internet.
[0016] In some embodiments, the one or more location-based usage permissions restrict Internet access to only a pre-approved subset of websites.
[0017] In some embodiments, the one or more location-based usage permissions restrict usage of at least a first software application and allow usage of at least a second software application different from the first software application.
[0018] In another aspect, an embodiment of the present application further provides a method, comprising: determining a current location of a second device using an ultra-wideband transceiver on a first device; and implementing one or more usage restrictions of the second device when the second device is located at the current location based on the current location determined using the ultra-wideband transceiver.
[0019] In some embodiments, the first device may be different from or may be the same as the second device.
[0020] In some embodiments, the area for the usage restriction is established based on a digitized building blueprint accessible to the first device.
[0021] In some embodiments, the zone for the usage restriction is established based on a perimeter of a room of a building traversed by one or more of the first and second devices.
[0022] In some embodiments, the method further comprises presenting a graphical user interface (GUI) on the display that prompts the end-user to walk around the perimeter of the desired area to establish the area.
[0023] In another aspect, the embodiment of the present application further provides at least one computer-readable storage medium of a non-transient signal. The computer-readable storage medium includes instructions executable by at least one processor to perform the following operations: determine a current location of a device using an ultra-wideband transceiver; and based on the current location determined using the ultra-wideband transceiver, implement the one or more usage restrictions of the device when the device is located at the current location.
[0024] In some embodiments, the one or more usage restrictions include limiting use of the device for electronic gaming while the device is within an area that includes the current location during a particular time span on a weekday.
[0025] In the embodiments of the present disclosure, a method is provided to determine the current location of a device based on an ultra-wideband signal transmitted between devices, which at least solves the problem that the prior art cannot track the location of a device with sufficient granularity indoors. Furthermore, based on the current location, a location-based use permission is established for the device, thereby allowing or prohibiting the terminal user from using various functions of the device according to the location of the device. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0027] Figure 1 A block diagram of a system provided for one embodiment of the present application.
[0028] Figure 2 A block diagram of a device network provided for one embodiment of the present application.
[0029] Figure 3 An embodiment of the present application provides a graphical user interface presented on a display for helping guide a user to establish an area where device usage is permitted or restricted.
[0030] Figure 4 A schematic diagram of a user-created area provided for one embodiment of the present application.
[0031] Figure 5 An exemplary logic of device usage permission / restriction is presented in a schematic flowchart executed by a device according to one embodiment of the present application.
[0032] Figure 6 An example settings graphical user interface presented on a display for operating to configure one or more settings of a device / location tracking system is provided for one embodiment of the present application.
[0033] Figure 7 An example description of ultra-wideband positioning accuracy provided by one embodiment of the present application. DETAILED DESCRIPTION
[0034] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0035] In the following description, many specific details are set forth to facilitate a full understanding of the present application, but the present application may also be implemented in other ways different from those described herein, and those skilled in the art may make similar generalizations without violating the connotation of the present application. Therefore, the present application is not limited to the specific embodiments disclosed below.
[0036] As will be appreciated by those skilled in the art, embodiments of the present application may be embodied as systems, methods or program products. Therefore, embodiments may take the form of complete hardware embodiments, complete software embodiments (including firmware, resident software, microcode, etc.) or embodiments of software and hardware combinations, which are generally referred to herein as "circuits", "modules" or "systems". In addition, embodiments may also take the form of program products in one or more computer-readable storage devices, which store machine-readable code, computer-readable code and / or program code, hereinafter referred to as code. Storage devices may be tangible, non-temporary and / or non-transmitting. Storage devices may not contain signals. In a particular embodiment, the storage device uses only signals for accessing the code.
[0037] Many functional units described in this specification are labeled as modules to emphasize their implementation independence. For example, a module can be a hardware circuit, including a custom very-large-scale integration (VLSI) or gate array, an off-the-shelf semiconductor component (such as a logic chip, transistor, or other discrete component). A module can also be implemented in a programmable hardware device, such as a field programmable gate array (FPGA), programmable array logic (PAL), programmable logic array (PLD), etc.
[0038] Module can also be code and / or software for various types of processors to execute, so module can also be called code module.For example, the code module can include the physical or logical block of one or more executable codes.The physical or logical block can be organized as an object, a process or a function.However, the executable file of the code module does not need to be physically placed together, but can include different instructions stored in different locations, and when these instructions are combined together logically, the code module is constituted and the predetermined purpose of the code module is realized.
[0039] The code module can be a single instruction or multiple instructions and can even be distributed over multiple different code segments, between various programs, and across multiple storage devices. Similarly, operational data can be identified and described within the module and can be embodied in any suitable form and organized in any suitable data structure type. The operational data can be collected as a single data set or distributed in different locations, including other computer-readable storage devices. In the case of implementing a module or a portion of a module in software, the software portion is stored on one or more computer-readable storage devices.
[0040] The code module may use any combination of one or more computer readable media. The computer readable medium may be a computer readable storage medium. The computer readable storage medium may be a storage device storing the code. The storage device may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, holographic, micromechanical or semiconductor system, device or apparatus, or any suitable combination of the foregoing.
[0041] More specific embodiments of storage devices (a non-exhaustive list) may include the following: an electrical connection with one or more wires, a portable computer floppy disk, a hard disk, a random-access memory (RAM), a read-only memory (ROM), an (electronically) erasable programmable read-only memory (EPROM, electrically erasable programmable read-only memory, EEPROM and / or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this specification, a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0042] The code for performing the operations of the various embodiments may be written in any combination of one or more programming languages, including object-oriented programming languages such as Python, Ruby, Java, Smalltalk, C++, and the like, as well as traditional procedural languages. Programming languages such as the "C" programming language, and / or machine languages such as assembly languages. The code may be executed entirely on the user's computer, partially on the user's computer as a stand-alone software package, partially on the user's computer, partially on a remote computer, or entirely on a remote computer or server. In the latter case, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., by using a network service provider's network).
[0043] References to "one embodiment," "embodiment," or similar language throughout the specification mean that a particular feature, structure, or function described in conjunction with the embodiment is included in at least one embodiment. Therefore, the phrases "in one embodiment," "in an embodiment," and similar language that appear throughout the specification may, but do not necessarily, refer to the same embodiment, unless otherwise expressly stated to mean "one or more but not all embodiments." Unless otherwise expressly stated, the terms "include," "comprises," "has," and variations thereof mean "including but not limited to." Unless otherwise expressly stated, a list of enumerated items does not mean that any or all items are mutually exclusive. Unless otherwise expressly stated, the terms "one," "a," and "the" also mean "one or more."
[0044] In addition, the described functions, structures or characteristics of the embodiments may be combined in any suitable manner. The following description provides many specific details, such as programming embodiments, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of the embodiments. However, those skilled in the relevant art will recognize that these embodiments may be practiced without one or more specific details or using other methods, components, materials, etc. In other cases, well-known structures, materials or operations are not shown or described in detail to avoid blurring the understanding of the embodiments.
[0045] The following describes these embodiments with reference to the schematic flow charts and / or schematic structural block diagrams of the methods, devices, systems, and program products according to the embodiments. Each block of the schematic flow chart and / or schematic structural block diagram, as well as the combination of blocks in the schematic flow chart and / or schematic structural block diagram, can be implemented by code. The code can be provided to a processor of a general-purpose computer, a mobile phone, a special-purpose computer, or other programmable data processing device to generate a machine device, so that the instructions are executed by the processor of the computer or other programmable data processing device to create a device for implementing the functions / actions specified in the schematic flow chart and / or schematic structural block diagram blocks.
[0046] The code may also be stored in a storage device that can direct a computer, other programmable data processing apparatus or other device to operate in a specific manner so that the instructions stored in the storage device produce a product that executes the functions / actions specified in the schematic flowchart and / or schematic structure block diagram blocks.
[0047] The code may also be loaded onto a computer, other programmable data processing apparatus, or other device to be executed on the computer, other programmable machine, or other device through a series of operational steps to produce a computer-implemented process, so that the code executed on the computer or other programmable device provides a process for implementing the functions / actions specified in the schematic flowchart and / or schematic structure block diagram blocks or blocks.
[0048] The schematic flow charts and / or schematic structural block diagrams in the accompanying drawings illustrate possible implementation architectures, functions, and operations of devices, systems, methods, and program products according to various embodiments. In this regard, each block in the schematic flow charts and / or schematic structural block diagrams may represent a module, segment, or portion of code, including one or more executable instructions for implementing a code of a specified logical function.
[0049] It should also be noted that in certain alternative implementations, the functions annotated in the blocks may not appear in the order annotated in the figure. For example, two blocks shown in succession may be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order, depending on the functions involved. Other steps and methods are contemplated that are equivalent in function, logic, or effect to one or more blocks or portions thereof of the illustrated figures.
[0050] Although various arrow types and line types may be used in the schematic flow charts and / or schematic block diagrams, they should be understood as not limiting the scope of the corresponding embodiments. In fact, some arrows or other lines may only indicate the logical flow of the depicted embodiments. For example, an arrow may indicate a waiting or monitoring period of unspecified duration between the enumerated steps of the illustrated embodiments. Each block of the schematic block diagram and / or schematic flow chart, and the combination of blocks in the schematic block diagram and / or schematic flow chart, may be implemented by a system based on specific / dedicated hardware that performs a specified function or action or a dedicated combination of hardware and code.
[0051] The description of the elements in each figure may refer to the elements of the previous figure. In all figures, the same numerals refer to the same elements, including alternative embodiments of the same elements.
[0052] Among other things, the detailed description below discusses the use of ultra-wideband communications for home and other network management. Thus, one or more restricted areas can be calibrated by a software agent. The software agent can define the boundaries of a room, multiple rooms, floors of a house, etc. as zones. Network traffic information can also be filtered based on the location of the device in the home determined by ultra-wideband to limit some activities that are identified as not part of the virtual school day or other activities that the user will fully participate in. The network management tool can also be used to add a time component to further refine the time of day restrictions. Thus, for example, a device can be enabled to be used only for doing homework in a room of the house on the second floor, but the device is prohibited from being used to play games in the same room.
[0053] Before further describing the details of the present technology, please note that with respect to any computer system discussed herein, the system may include server and client components connected via a network so that data can be exchanged between the client and server components. The client components may include one or more computing devices, including televisions (e.g., smart TVs, Internet-enabled televisions), computers (e.g., desktops, laptops, and tablets), so-called convertible devices (e.g., having a tablet configuration and a laptop configuration), and other mobile devices including smartphones. As non-limiting examples, these client devices may use operating systems from Apple Inc. of Cupertino, California, Google Inc. of Mountain View, California, or Microsoft Corporation of Redmond, Washington. Unix® or similar operating systems, such as Linux® operating systems, may be used. These operating systems may execute one or more browsers, such as browsers manufactured by Microsoft, Google, or Mozilla, or other browser programs to access web pages and applications hosted by Internet servers via a network (e.g., the Internet, a local intranet, or a virtual network) or a private network.
[0054] As used herein, instructions refer to computer-implemented steps for processing information in a system. The instructions may be implemented in software, firmware, or hardware, or a combination thereof, and include any type of programming steps performed by system components. Therefore, illustrative components, blocks, modules, circuits, and steps are sometimes described in terms of their functionality.
[0055] The processor may be any general purpose single-chip or multi-chip processor that can execute logic through various signal lines such as address lines, data lines and control lines, as well as registers and shift registers. In addition, any logic blocks, modules and circuits described in this specification may be implemented or executed with a general purpose processor, a digital signal processor (DSP), a field programmable gate array (FPGA) or other programmable logic device such as an application specific integrated circuit (ASIC), discrete gate or transistor logic, discrete hardware components or any combination designed to perform the functions described in this specification. The processor may also be implemented by a combination of a controller or a state machine or a computing device. Therefore, the method in this specification may be implemented or executed by software instructions executed by a processor, an appropriately configured ASIC or FPGA module, or any other convenient manner known to those skilled in the art. In the case of using software instructions, the software instructions may also be included in a non-temporary computer-readable storage medium that is sold and / or provided, which is not a temporary, propagated signal and / or the signal itself (e.g., a hard drive, a CD ROM, or a flash drive). The software code instructions may also be downloaded via the Internet. Thus, it should be understood that while software applications for implementing the present principles may be sold with a device such as the system 100 described below, such applications may also be downloaded to the device from a server over a network such as the Internet.
[0056] The software modules and / or applications described herein by flow charts and / or user interfaces may include various subroutines, processes, etc. Without limiting the present disclosure, the logic performed by a particular module may be redistributed to other software modules and / or combined together in a single module and / or shared in a sharable source code library.
[0057] When the logic is implemented in software, it may be written in an appropriate language such as, but not limited to, Hypertext Markup Language (HTML)-5, Java® / JavaScript, C#, or C++, and may be stored on or transmitted from a computer-readable storage medium, such as a random access memory (RAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a hard drive or solid-state drive, a compact disk read-only memory (CD-ROM) or other optical storage device, such as a digital versatile disc (DVD), a magnetic disk storage device or other magnetic storage device, and a removable thumb drive, etc.
[0058] In one embodiment, the processor can access information from a data storage such as a computer readable storage medium through its input interface, and / or the processor can wirelessly access information from an Internet server by activating a wireless transceiver to send and receive data. The data is typically converted from analog to digital signals by circuits between an antenna and a register of the processor when receiving, and from digital to analog signals when transmitting. The processor processes the data through its shift register to output the calculated data on the output interface to present the calculated data on the device.
[0059] The components in one embodiment may be used in other embodiments in any appropriate combination. For example, any of the various components described in this specification and / or depicted in the accompanying drawings may be combined, interchanged, or excluded from other embodiments.
[0060] The expression “a system having at least one of A, B, and C” (also “a system having at least one of A, B or C” and “a system having at least one of A, B, C”) means that the system may include: A alone, B alone, C alone, A and B together, A and C together, B and C together, and / or A, B and C together, etc.
[0061] The term "circuit" may be used in the Summary, Detailed Description, and / or Claims. As is well known in the art, the term "circuit" includes all levels of available integration, for example, from discrete logic circuits to the highest levels of circuit integration such as VLSI, and includes programmable logic components programmed to perform the functions of the embodiments as well as general or special purpose processors programmed with instructions to perform these functions.
[0062] Now specific reference Figure 1 , Figure 1 An example block diagram of an information handling system and / or computer system 100 is shown, which is understood to have a housing for the components described below. In some embodiments, the system 100 can be a desktop computer system, such as one of the ThinkCentre® or ThinkPad® series personal computers sold by Lenovo (US) Inc. located in Morrisville, North Carolina, or a workstation computer, such as a ThinkStation® sold by Lenovo (US) Inc. located in Morrisville, North Carolina. However, it can be seen from the description here that a client device, server or other machine according to the present principles can include other features of the system 100 or only some features. In addition, the system 100 can be a game console such as XBOX® and / or the system 100 can include a mobile communication device such as a mobile phone, a laptop computer and / or other portable computerized device.
[0063] like Figure 1 As shown, the system 100 may include a so-called chipset 110. A chipset refers to a group of integrated circuits or chips designed to work together. The chipset is typically sold as a single product (e.g., consider chipsets sold under the brands INTEL®, AMD®, etc.).
[0064] exist Figure 1 In the example of , the chipset 110 has a specific architecture that may vary by brand or manufacturer. The architecture of the chipset 110 includes a core and memory control group 120 and an I / O control hub 150 that exchanges information (e.g., data, signals, commands, etc.) through, for example, a direct management interface or direct media interface (DMI) 142 or a link controller 144. Figure 1 In the example shown, the DMI 142 is a chip-to-chip interface (sometimes referred to as a link between a “north bridge” and a “south bridge”).
[0065] The core and memory control group 120 includes one or more processors 122 (e.g., single core or multi-core, etc.) and a memory control hub 126 that exchanges information via a front-side bus (FSB) 124. As described herein, the various components of the core and memory control group 120 may be integrated onto a single processor die, for example, to create a chip that replaces a "North Bridge" architecture.
[0066] The memory control hub 126 is connected to the memory 140. For example, the memory control hub 126 can provide support for DDR SDRAM memory (e.g., DDR, DDR2, DDR3, etc.). Generally speaking, the memory 140 is a random access memory (RAM). It is usually called "system memory".
[0067] The memory control hub 126 may also include a low voltage differential signaling interface (LVDS) 132. The LVDS 132 may be a so-called LVDS display interface (LDI) for supporting a display device 192 (e.g., a CRT, a flat panel display, a projector, a touch-sensitive light-emitting diode display, or other video display, etc.). The display module 138 includes some examples of technologies that can be supported by the LVDS interface 132 (e.g., serial digital video, HDMI / DVI, display port). The memory control hub 126 also includes one or more PCI-express interfaces (peripheral component interconnect-express, PCI-E) 134, for example, to support a discrete graphics card 136. Discrete graphics cards using the PCI-E interface have become an alternative to accelerated graphics ports (AGP). For example, the memory control hub 126 may include a 16-lane (x16) PCI-E port for a PCI-E-based external graphics card (including, for example, one of a plurality of GPUs). The example system 100 may include AGP or PCI-E for supporting graphics.
[0068] In one embodiment, the I / O controller hub 150 may include a variety of interfaces. Figure 1Examples include a Serial Advanced Technology Attachment (SATA) interface 151, one or more PCI-E interfaces 152 (optionally one or more legacy PCI interfaces), one or more USB interfaces 153, a local area network (LAN) interface 154 (more generally used for at least one network under the control of the processor 122, such as the Internet, WAN, LAN, a Bluetooth network using Bluetooth 5.0 communication, etc.), a general purpose input output (GPIO) interface 155, a low pin count (LPC) interface 170, a power management interface 161, a clock generator interface 162, an audio interface 163 (e.g., for outputting audio from a speaker 194), a time-controlled operations (TCO) interface 164, a system management bus interface (e.g., a multi-master serial computer bus interface) 165, and a serial peripheral flash / controller interface (SPI flash) 166. Figure 1 In the example of , it includes a basic input output system (BIOS) 168 and a boot code 190. Regarding network connections, the I / O control hub 150 may include an integrated Gigabit Ethernet controller interface multiplexed with a PCI-E interface port. Other network functions may run independently of the PCI-E interface.
[0069] The interfaces of the I / O control hub 150 can provide communication with various devices, networks, etc. For example, when used, the SATA interface 151 provides reading, writing, or reading and writing information on one or more drives 180, such as HDD, SSD, or a combination thereof, but in any case, the drive 180 is understood to be a tangible computer-readable storage medium that propagates signals, such as non-temporary. The I / O control hub 150 may also include an advanced host controller interface (AHCI) to support one or more drives 180. The PCI-E interface 152 allows wireless connection WIFI 182 to devices, networks, etc. The USB interface 153 provides connection to input devices 184, such as keyboards (KB), mice, and various other devices (e.g., cameras, phones, storage, media players, etc.).
[0070] exist Figure 1In the example of FIG. 1 , the LPC interface 170 provides for use with one or more ASICs 171, a trusted platform module (TPM) 172, a super I / O 173, a firmware hub 174, BIOS support 175, and various types of memory 176, such as ROM 177, flash memory 178, and non-volatile RAM (NVRAM) 179. With respect to the TPM 172, the module may be in the form of a chip for authenticating software and hardware devices. For example, the TPM 172 may perform platform authentication and may be used to verify that the system seeking access is the expected system.
[0071] [1] When powered on, the system 100 may be configured to execute boot code 190 for BIOS 168 stored in SPI flash memory 166 and then process data under the control of one or more operating systems and application software (e.g., stored in system memory 140). The operating system may be stored in any of a number of locations and accessed according to instructions from BIOS 168.
[0072] In addition, the system 100 may include an ultra-wideband transceiver 191 configured to send and receive data using ultra-wideband signals and ultra-wideband communication protocols (e.g., protocols proposed by the FiRa Consortium). As described herein, ultra-wideband can use low-energy, short-range, high-bandwidth pulse communications over a relatively large portion of the radio spectrum. Thus, for example, the ultra-wideband signal / pulse can be established by a radio signal having a fractional bandwidth greater than 20% and / or a bandwidth greater than 500 MHz. In some examples, ultra-wideband communications can be performed using multiple frequencies (e.g., simultaneously) within a frequency range from 3.1 to 10.6 GHz.
[0073] To transmit UWB signals consistent with the present principles, for example, the transceiver 191 itself may include one or more Vivaldi antennas and / or a multiple-input and multiple-output (MIMO) distributed antenna system. It should be further understood that various UWB algorithms, time difference of arrival (TDoA) algorithms, and / or angle of arrival (AoA) algorithms may be used by the system 100 to determine the distance and location of another UWB transceiver on another device that is communicating with the UWB transceiver on the system 100, thereby tracking the real-time location of the other device.
[0074] In addition, although not shown for simplicity, in some embodiments, the system 100 may include a gyroscope that senses and / or measures the orientation of the system 100 and provides related input to the processor 122, and an accelerometer that senses acceleration and / or movement of the system 100 and provides related input to the processor 122. Further, the system 100 may include an audio receiver / microphone that provides input to the processor 122 from the microphone based on detected audio, such as by a user providing voice input to the microphone. The system 100 may also include a camera that collects one or more images and provides the images and related input to the processor 122. The camera may be a thermal imaging camera, an infrared (IR) camera, a digital camera such as a webcam, a three-dimensional (3D) camera, and / or a camera that is otherwise integrated into the system 100 and can be controlled by the processor 122 to collect still images and / or video. Additionally, the system 100 may include a global positioning system (GPS) transceiver configured to communicate with at least one satellite to receive / identify geographic location information and provide the geographic location information to the processor 122. However, it should be understood that another suitable location receiver other than a GPS receiver may be used to determine the location of the system 100 in accordance with present principles.
[0075] It should be understood that an example client device or other machine / computer may include, for example, Figure 1 In any case, it should be understood, at least based on the foregoing, that the system 100 is configured to operate using the present principles.
[0076] refer to Figure 2 , Figure 2 Example devices are shown communicating in accordance with present principles over a network 200 such as the Internet. It should be understood that reference Figure 2 Each device described may include at least some features, components and / or elements of the above-described system 100. In fact, any device disclosed in this specification may include at least some features, components and / or elements of the above-described system 100.
[0077] Figure 2Shown are a notebook computer and / or switchable computer 202, a desktop computer 204, a wearable device such as a smart watch 206, a smart television (TV) 208, a smart phone 210, a tablet computer 212, a router or access device or beacon or smart home hub device 216, and a server 214, such as an Internet server, that can provide cloud storage accessible to the devices 202-212, 216. It should be understood that the devices 202-216 can be configured to communicate with each other via the network 200 and / or ultra-wideband to implement the operating principles described.
[0078] Referring to Figure 3, assume that a system administrator, school official, or technology officer wishes to define the geographic boundaries of a permitted / restricted area based on location tracking. For example, a parent may wish to define the area as the bedroom of one of the children participating in remote learning from the bedroom. Alternatively, a technology officer of a company, group, or organization may wish to define the area as a conference room in a building where a group meeting is held.
[0079] To this end, the end user may launch an ultra-wideband tracking application ("app") or browse a device menu to present a graphical user interface (GUI) 300 of FIG. 3 on the user's device. As shown, the GUI may include a prompt 302 indicating that the end user should walk around the perimeter of the desired area to establish the area as an area where usage permissions / restrictions should be controlled. The prompt 302 may be accompanied by a selector 304 that may selectively configure the end user's device or other devices communicating therewith (for performing location tracking) to begin tracking the user's device via ultra-wideband to spatially map the boundary of the area based on the ultra-wideband signals exchanged between the two devices. As described in detail in this specification, since the ultra-wideband signal allows not only close-range tracking but also relatively high-fidelity location tracking compared to other location tracking methods, high-precision ultra-wideband location identification can be achieved in indoor environments, thereby accurately implementing device usage permissions and restrictions based on location positioning.
[0080] However, if the user wishes to use another way to establish the boundaries of the area for later ultra-wideband location tracking to establish usage permissions / restrictions, the GUI 300 may also provide other ways to do so. In one embodiment, the user uploads a pre-stored digital blueprint of the building or floor on which restrictions are to be implemented. Therefore, a selector 306 may be presented to select to launch a file browser from which a stored digital blueprint may be selected and uploaded.
[0081] In another embodiment, the user may be standing in the center of the room, and the boundaries of the room are the boundaries that need to be established for the constraints. When the user holds the device and stands in the center of the room, ultra-wideband position tracking can be performed to identify the current location of the user's device. The user can enter the length and width dimensions of the room through the corresponding input boxes 308, 310. The device can infer the boundaries of the room based on the assumption that it is currently located in the center of the room and the length and width quantities that the user has entered in boxes 308, 310. In the case where the length and width dimensions are not equal, additional input elements can be provided for the user to specify which side or boundary of the area constitutes the length and width dimensions.
[0082] To allow the user to also establish the altitude of the area to control device usage permissions / restrictions, different options may also be presented as part of the GUI 300. The first option 312 involves the user inputting into input box 314 to establish the altitude as plus or minus a predetermined number of feet relative to the current altitude / position of the device held by the user.
[0083] The second option 316 involves the user using a selector 318 to initiate ultra-wideband position tracking of the user device while the user moves their device to the upper limit of the desired area and the lower limit of the desired area. If the movement is irregular or oscillatory as the user moves the device up and down, the user device may select the highest and lowest points of the device during ultra-wideband position tracking as the upper and lower limits of the area, respectively. Thus, based on the room example above, the user may squat and place the user device on the floor to establish the lower boundary, then step on a stool and place the user device on the ceiling to establish the upper boundary.
[0084] 4, it is also noted that while ultra wideband position tracking is being performed, another GUI may be overlaid on the GUI 300. The other GUI may include a "Stop" option that may be selected to stop ultra wideband position tracking once the user is satisfied or has provided length, width, and height inputs.
[0085] The room example above is further illustrated in the schematic diagram of FIG4 . The schematic diagram shows a user (designated 400) holding a user device (designated 402) and walking in the direction indicated by arrow 404 around a room 406 of an area where the user wishes to set device usage restrictions. In this example, the schematic diagram shows the first floor of a multi-story personal residence, and the user device 402 and user 404 walk around the perimeter of the room 406 to establish a track of the length and width boundaries shown by the dashed lines 408 adjacent to the walls. As the user 400 walks around the perimeter of the room 406 holding the ultra-wideband position tracking device 402, the user 400 may hold the device 402 relatively close to the walls of the room 406, such as within an inch or less, so that the position tracking established by the relatively high-fidelity ultra-wideband position tracking is close to, if not identical to, the actual area of the room 406 established by the walls of the room 406 themselves.
[0086] In continuing Figure 5 As described above, the area established by user 400 to control device usage restrictions does not have to be limited to a single room or any room. For example, a zone can be established based on user device 402 passing through an area larger or smaller than room 406 but still within the same building. Alternatively, the zone can be established in an open space such as a park or field. For example, if a group of students are sitting outdoors in a playground or lunch area, the students' teacher can walk around the group with his / her ultra-wideband-enabled smartphone to establish a virtual boundary. Within that boundary, each student can have permission to use the student's own device.
[0087] refer to Figure 5 , Figure 5 Example logic is shown that may be performed by a system such as system 100 or device 402 according to the above examples. Although the logic of FIG. 5 is shown in a flow chart format, state logic or other suitable logic may also be used.
[0088] It is also noted that the various steps of the logic may be performed in whole or in part by one or more ultra-wideband-enabled devices, which may communicate with each other in any appropriate combination for ultra-wideband-based location tracking. For example, the logic may be performed in whole or in part by device 402 and / or by another device in the same building as room 406, such as an Internet modem / router, a network access point, an ultra-wideband beacon, another personal computer / personal device, a smart home hub device for Internet of Things (IoT) management, etc., each of which may have its own ultra-wideband transceiver to communicate with the ultra-wideband transceiver on device 402 for ultra-wideband location tracking of device 402. In addition, a remote Internet-based server may perform various steps in the logic in the example, wherein the server communicates with two other ultra-wideband-enabled devices that are themselves located in a public place (e.g., the building where room 406 is located) to receive appropriate ultra-wideband data from them and remotely control the permissions / restrictions of a given device in the public place. For example, the remote server may be tens or hundreds of miles away.
[0089] In any case, the logic may begin at block 500, where the system may receive input to begin ultra-wideband based location tracking to define an area within which control device restrictions / permissions will be made. For example, at block 500, the system may receive a user selection Figure 3 An input from selector 304 or 318 in the example embodiment may be received, or a voice command or other suitable command may be received to start tracking.
[0090] The logic may then proceed from box 500 to box 502, where the system may track the location of the device moving around the area to define the area using ultra-wideband signal transmissions between the device and another ultra-wideband-enabled device. For example, the device moving to establish the area may use its ultra-wideband transceiver to broadcast an ultra-wideband signal to another ultra-wideband device near the area so that the other ultra-wideband device can identify and track the current location of the mobile device. Additionally or alternatively, the mobile device may track the location of the mobile device itself based on ultra-wideband signals received from other devices. Thus, the location tracking of the mobile device may be relative to other devices, or if absolute location identification is required, the known location of the other device may be used to infer the current absolute location of the mobile device (e.g., if the other device is located in a fixed or static place, like an Internet router). Further, some or all of the location tracking may be performed by a remote server based on ultra-wideband signal data forwarded by each of the other two ultra-wideband-enabled devices.
[0091] For example, the current location of the mobile device itself can be determined using one or more ultra-wideband location identification algorithms, time difference of arrival (TDoA) algorithms, and / or angle of arrival (AoA) algorithms. Therefore, compared to other location tracking methods, ultra-wideband location detection at block 502 can provide relatively high-fidelity location tracking of the mobile device, and as described in this specification, high-precision ultra-wideband location identification is particularly helpful in accurately controlling location-based device usage permissions / restrictions in indoor and private environments.
[0092] Continuing with reference to block 502, the system executing the logic may also access or receive a request based on user input (e.g., to Figure 3 308, 310 and 314 in the example above) to establish the dimensions of the area of use restriction / permission, and / or to access or receive a digital blueprint located on the Internet or provided by the user (e.g., using Figure 3 Additionally or alternatively, computer vision can be used to process input from a camera on the mobile device to determine the size of the area.
[0093] The logic may then proceed from block 502 to block 504 where the system may save the tracking data indicating the area in a local persistent storage device and / or a remote persistent storage device, such as a hard drive or solid state drive.
[0094] Then, at a later time after the zone has been established, the logic may proceed to blocks 506 and 508. At block 508, the system may determine the current location of the first ultra-wideband enabled device using the ultra-wideband signals transmitted between the first ultra-wideband enabled device and the second ultra-wideband enabled device to determine whether the first ultra-wideband enabled device is within the zone that controls device usage permissions / restrictions. The first ultra-wideband enabled device may be the same device that was first moved around the zone to establish the zone at block 502, or may be a different ultra-wideband enabled device, but still configured with one or more usage permissions within the zone.
[0095] refer to Figure 6 , Figure 6 An example GUI 600 is shown. The GUI 600 may be presented on a display of an end-user's device or a system administrator's device to allow or restrict the use of certain functions of a given device within established permitted / restricted regions. Thus, the GUI 600 may be presented on a display for configuring one or more settings of a given device operating in accordance with the present principles, and it should be understood that each option discussed below may be selected by touch or cursor input within an adjacent check box, respectively.
[0096] Starting with option 602, you can select this option 602 to set or enable the system to enforce current principles in the future. For example, you can set or configure the system to enable ultra-wideband based device location tracking to determine whether to enforce usage permissions / restrictions at the device by selecting option 602. For example, selecting this option 602 can set or cause the system to enforce Figure 5 The logic and execution of the above Figure 3 and 4 Other functions of device 402 are discussed.
[0097] Additionally, in some embodiments, the GUI 600 may include an option 604 for setting or causing the position tracking system to set the area / room for device usage permission / restriction using an assumed linear boundary and / or a defined geometric shape (e.g., a primary geometric plane shape such as a rectangle, circle, or triangle). Thus, when a user walks around the perimeter of a room / area for which usage restrictions / permissions are to be set to set the boundaries of the area, if a larger object (e.g., a large table or bookcase) prevents the user from holding the device close to the wall of the room (or the perimeter of other areas) at certain points, the option 604 may be used to address such an issue. In such a case, if the ultra-wideband signal indicates the presence of an entrance (e.g., less than a threshold length, such as five feet) and has colinear / coplanar segments on each side of the entrance, the entrance may be ignored and the boundary or wall on that side of the room or other area may be assumed to extend colinearly between the colinear / coplanar segments on either side of the entrance itself. Similarly, if the walls of the room are curved, the radius of the entire boundary may be assumed to be the same as the line segments on the left and right sides of the entrance, without taking into account the presence of the entrance.
[0098] Additionally, in some embodiments, the GUI 600 may include an option 604 to set or enable the location tracking system to assume linear boundaries and / or defined geometric shapes (e.g., primary geometric plane shapes such as rectangles, circles, or triangles) for setting areas / rooms for which the device usage is permitted / restricted.
[0099] Continue to refer Figure 6 , the GUI 600 may also include a drop-down option 606, which may be selected to cause a drop-down menu to be overlaid on the GUI 600, so that the user can select a given networked device from which to configure usage permissions and restrictions. In this example, the device named "John's Tablet" has been selected and is displayed on the front of the drop-down option 606.
[0100] As for the permissions / restrictions themselves, they can be presented as a list with one or more restricted functionality options. In this example, the game option 608 can be selected so that John's tablet is restricted (in this case, completely blocked) from electronic gaming when the tablet is located in a defined area for which usage permissions / restrictions have been established. Thus, gaming can be restricted whether the gaming application is executed locally on the tablet or the tablet is used to participate in gaming online. For example, an electronic list of gaming applications, game titles, and / or gaming websites can be used to identify the games that should be restricted in a given instance.
[0101] In some embodiments, the GUI 600 may present an option 610 to limit John's tablet's Internet access to performing end-user requested tasks within established areas, except for video conferencing (eg, as part of distance learning or business video conferencing).
[0102] If desired, the user or administrator may also pre-approve a subset of various domain names / websites using input box 612. Access to these domain names / websites may be allowed on the tablet when the tablet is in an established zone, and access to any domain names / websites not in the pre-approved subset of various domain names / websites may be restricted on the tablet.
[0103] Furthermore, in some embodiments, only certain applications may be allowed to be used on the tablet computer when the tablet computer is within the established area. Thus, when the tablet computer is within the established area, all other applications except those that are allowed are prohibited from use. In order to select the applications that are allowed to be used, one or more options for the applications that are allowed to be used may be selected. In this embodiment, the options relate to the use of a specific video conferencing application (option 614), a specific word processing application (option 616), a specific social media / networking application (option 618), and a specific text messaging application (option 620).
[0104] Additionally, in some embodiments, device usage permissions / restrictions within established zones may be enforced only during certain time spans rather than all time. Thus, the GUI 600 may present input boxes 622, 624 to establish respective start and end times of the day during which permissions / restrictions for John's tablet are established. If desired, one of options 626-630 may be selected to specify that the times entered into boxes 622, 624 are weekdays (option 626), only Saturdays and Sundays (option 628), or all days of the week (option 630).
[0105] Further, in some embodiments, the GUI 600 may include options 632, 634. Option 632 may be used to set or configure John's tablet to not allow its ultra-wideband transceiver (or ultra-wideband communications) to be disabled or deactivated when John's tablet is within an established area (perhaps only during the time set with options 622-630), so that the usage permissions and restrictions cannot be circumvented by simply turning off the ultra-wideband communications or the transceiver itself. Alternatively, if disabling the ultra-wideband transceiver or ultra-wideband communications on John's tablet requires disabling or deactivating John's tablet for all locations and times, whether John's tablet is within the established area or in another area where no permissions / restrictions exist, option 634 may be selected so that the user cannot circumvent the usage restrictions / permits by turning off the ultra-wideband communications before entering the established area associated with the usage permissions / restrictions and when outside the established area.
[0106] refer to Figure 7 , Figure 7 An example diagram 700 of ultra-wideband positioning accuracy is shown. As shown, execution Figure 5 The first device 702 of the logic can use the ultra-wideband signal exchange to determine the bearing 706 to the second device 704, which can be accurate to plus / minus three degrees 708 or less. The depth (distance) between the first device 702 and the second device 704 can also be determined to plus / minus ten centimeters 710 or even less using the ultra-wideband signal exchange. Therefore, the first device 702 can determine the position of the second device 704 relative to the first device 702 with relatively high accuracy. Thus, for example, the first device 702 can be a router or gateway that tracks the position of the second device 704 via ultra-wideband to establish usage permissions / restrictions for the second device 704.
[0107] It can be appreciated that the principles of the present disclosure provide an improved computer-based user interface that increases the functionality and accuracy of the devices disclosed herein. The disclosed concepts are rooted in computer technology for computers to perform their functions.
[0108] It should be understood that although this specification has described the present principles with reference to some example embodiments, these are not intended to limit the present disclosure, and various alternative methods may be used to implement the subject matter claimed in this specification. The components included in one embodiment may be used in other embodiments in any appropriate combination. For example, any of the various components described herein and / or depicted in the figures may be combined, interchanged, or excluded from other embodiments.
[0109] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. An apparatus for limiting the use of an ultra-wideband device, comprising: at least one processor; as well as a memory accessible by the at least one processor and comprising instructions executable by the at least one processor to: determining a current location of one or more of the first device and the second device based on at least one ultra-wideband signal transmitted between the first device and the second device; filtering network traffic information at a router to establish one or more location-based usage permissions for the one or more of the first device and the second device based on the current location, the one or more location-based usage permissions being subject to time-of-day restrictions managed by one or more network management tools executing at the router such that the one or more location-based usage permissions are enforced during a first time span of the day but not enforced during a second time span of the day, the second time span being different from the first time span; as well as Regardless of whether one or more of the first device and the second device are within an area where the one or more location-based usage permissions are applicable or within an area where the one or more location-based usage permissions are not applicable, it is not allowed to shut down ultra-wideband communication to circumvent the establishment of the one or more location-based usage permissions based on ultra-wideband location tracking.
2. The apparatus of claim 1, comprising an ultra-wideband transceiver accessible by the at least one processor, the ultra-wideband transceiver being used to transmit or receive the ultra-wideband signal.
3. The device according to claim 1, wherein: The apparatus includes the first device, and wherein the instructions are executable to perform the following operations: determining a current location of the second device based on the ultra-wideband signal transmitted by the second device and received by the first device; and One or more location-based usage permissions are established for the second device based on the current location of the second device determined from the ultra-wideband signal.
4. The device according to claim 1, wherein: The apparatus includes the second device, and wherein the instructions are executable to perform the following operations: One or more location-based usage permissions are established at the second device for the second device based on the current location of the second device.
5. The device according to claim 4, wherein: The one or more location-based usage permissions relate to one or more specific functions that are permitted in a first room within a building but not permitted in a second room within the same building, and wherein the current location of the second device corresponds to the second location.
6. The device according to claim 1, wherein: The instructions can be executed to perform the following operations: The ultra-wideband communications are not allowed to be turned off by not allowing the ultra-wideband transceiver to be disabled or deactivated.
7. The device according to claim 1, wherein: The instructions can be executed to perform the following operations: A settings graphical user interface is presented on the display, the settings graphical user interface including a selector selectable to configure the apparatus to not allow shutdown of ultra-wideband communications to circumvent establishment of the one or more location-based usage permissions based on ultra-wideband location tracking.
8. The device according to claim 1, wherein: The one or more location-based usage permissions are established for the first device, the first device being different from the router.
9. The device according to claim 8, wherein: The instructions can be executed to perform the following operations: Turning off ultra-wideband communications at the first device to circumvent establishment of the one or more location-based usage permissions for the first device based on ultra-wideband location tracking is not permitted.
10. The device according to claim 9, wherein: The router is the second device.
11. The device according to claim 8, wherein: The first device is a client device.
12. The device according to claim 1, wherein: The instructions can be executed to perform the following operations: The router is used to control a network gateway to establish the one or more location-based usage permissions based on the current location.
13. A method for limiting device usage based on ultra-wideband, comprising: using an ultra-wideband transceiver on a router to determine a current location of a second device distinct from the router; filtering network traffic information at the router to apply one or more usage restrictions for the second device when the second device is located at the current location based on the current location determined using the ultra-wideband transceiver; as well as Regardless of whether the second device is in an area where the one or more usage restrictions apply or in an area where the one or more usage restrictions do not apply, shutting down ultra-wideband communications to circumvent the imposition of the one or more usage restrictions is not permitted.
14. The method according to claim 13, comprising: A graphical user interface is presented on the display, the graphical user interface comprising a selector selectable to configure the second device to not allow ultra-wideband communications to be shut down at the second device to circumvent imposition of the one or more usage restrictions.
15. The method according to claim 13, wherein: The one or more usage restrictions are subject to time of day restrictions managed by one or more network management tools executed at the router, such that the one or more usage restrictions are implemented during a first time span of the day but not during a second time span of the day, the second time span being different from the first time span.
16. A computer-readable storage medium comprising instructions executable by at least one processor to: Uses an ultra-wideband transceiver to determine the current location of a device other than a router; filtering network traffic information at the router to impose one or more restrictions on how the device can be used when the device is located at the current location based on the current location determined using the ultra-wideband transceiver; as well as Regardless of whether the device is in an area where the one or more restrictions apply or in an area where the one or more restrictions do not apply, shutting down ultra-wideband communications to circumvent the imposition of the one or more restrictions is not permitted.
17. The computer-readable storage medium of claim 16, wherein: The one or more restrictions restrict the device from being used for electronic gaming when the device is within an area that includes the current location during a specified time span on a weekday.
18. The computer-readable storage medium of claim 16, wherein: The instructions can be executed to perform the following operations: The network traffic information is filtered using one or more network management tools executed at the router during a first time of day but not during a second time of day, the first time of day and the second time of day belonging to the same day.
19. The computer-readable storage medium of claim 16, wherein: The instructions can be executed to perform the following operations: A network gateway is controlled using the router to impose the one or more restrictions when the device is located at the current location.
Citation Information
Patent Citations
Method for positioning portable intelligent device
CN110166940A
System and method for ensuring handoffs across heterogeneous networks
US20080096560A1
Methods and Systems for Electronic Device Concealed Monitoring
US20190258785A1