Distributed positioning system and method and self-positioning device
By using a distributed UWB positioning system and self-positioning devices, the communication latency and robustness issues of existing robot positioning systems are solved, achieving high-precision, low-latency self-positioning and high-frequency positioning, and enhancing the system's scalability and anti-interference capabilities.
Patent Information
- Application Number
- CN202210525497.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2015-05-29
- Filing Date
- 2016-03-07
- Publication Date
- 2026-01-20
- Estimated Expiration
- 2036-03-07
AI Technical Summary
Existing UWB positioning systems suffer from problems such as high communication latency, high risk of signal loss, poor system robustness, low update rate, and limited scalability in robot positioning, making them particularly unsuitable for mobile robot applications that require high-precision and high-frequency positioning.
A distributed positioning system is adopted, which utilizes time-stamped UWB signals to directly receive signals for position calculation through self-positioning devices, reducing dependence on a central server and achieving self-positioning. It supports the parallel use of multiple transceivers, improving system redundancy and bandwidth utilization, and combines onboard motion sensors and global characteristic data for positioning fusion.
It achieves high-precision, low-latency self-localization in complex environments, improves the localization performance and system robustness of mobile robots, supports high-frequency localization of a large number of objects, and enhances the system's scalability and anti-interference capabilities.
Smart Images

Figure CN115267648B_ABST
Abstract
Description
[0001] This application is a divisional application of patent application number 201680026654.9, filed on March 7, 2016, having the title "Distributed Positioning System and Method and Self-locating Device".
[0002] Cross Reference to Related Applications
[0003] This application claims priority to U.S. Provisional Application No. 62 / 129,773, filed on March 7, 2015, and U.S. Provisional Application No. 62 / 168,704, filed on May 29, 2015, the entire contents of both of which are incorporated herein by reference. TECHNICAL FIELD
[0004] The present disclosure relates to the field of object positioning. The present disclosure also relates to ultra-wideband (UWB) positioning systems and methods. The present disclosure also relates to self-locating receiving devices. BACKGROUND
[0005] Logistics and industrial automation increasingly rely on precise positioning to support and control manual and automated processes, and the range of applications extends from "smart things" to effective tracking of robots such as automated guided vehicles (AGVs) and ancillary solutions.
[0006] Ultra-wideband (UWB) technology has been advocated as a positioning solution suitable for asset tracking applications. Such applications involve maintaining a centralized database of assets and their storage locations in a warehouse, hospital, or factory. When using UWB technology, assets such as pallets, assemblies, and the like, or people can be equipped with tags that send UWB signals at regular time intervals. UWB sensors installed in the warehouse, hospital, or factory can then detect these signals. A central server then uses the UWB signals detected by the UWB sensors to calculate the location of the tags and update the centralized database.
[0007] Mobile robots are increasingly being used to facilitate task performance in consumer and industrial settings. Autonomous mobile robots in particular offer benefits including: freeing workers from dirty, dark, dangerous, or remote tasks; high repeatability; and also high performance in an increasing number of cases. A significant challenge in using both general mobile robots and in particular autonomous mobile robots is robot localization, i.e., determining the location of the robot in space. Current localization solutions do not work well for many mobile robot applications, including applications where the mobile robot operates in areas where Global Positioning System (GPS) based localization is unreliable or ineffective, or applications that require operation in the vicinity of people.
[0008] Using current UWB positioning solutions for robot localization will not enable a mobile robot to determine its own position directly. Instead, a robot equipped with a tag will first send a UWB signal from its position, then a UWB sensor in the vicinity of the robot will detect this UWB signal and relay it to a central server, then the central server will calculate the position of the mobile robot, which then has to be communicated back to the robot via a wireless link. This type of system architecture always introduces a significant communication delay (e.g. latency) for controlling the mobile robot. The communication architecture also leads to a relatively high risk of lost signals (e.g. due to wireless interference) and a corresponding lower system robustness, which makes it unsuitable for many safety-critical robust applications (e.g. autonomous mobile robot operation). Furthermore, in this architecture the maximum number of tags and the tag transmission frequency (i.e. the update rate of the positioning system) are always linked, because multiple UWB signals cannot overlap, which leads to a relatively low redundancy (i.e. a limited number of tags allowed by the available network traffic load) and limited scalability (i.e. the system can only support a limited number of tags in parallel).
[0009] Figure 2A is a general block diagram of a centralized positioning system for asset tracking as proposed in the prior art. In this system, tags 202 move around in an environment while transmitting UWB signals 208 at different times. In this centralized system, the mobile transmitters can operate independently without synchronization. Fixed UWB sensors 204 are distributed around the environment. The sensors have synchronized clocks. The UWB sensors 204 receive the UWB signals 208 transmitted by the tags 202 and then communicate the reception times of the signals to a centralized server 206. Based on the reception times at each UWB sensor 204, the centralized server 206 calculates the position of each tag 202. Figure 2A The system architecture shown in is generally advanced for asset tracking where all tag 202 positions should be known at a centralized location and the tags 202 do not need to know their position. These features make this system architecture unsuitable for cases where the tracked objects need to know their position, e.g. a robot that makes decisions based on the knowledge of its position. Furthermore, since each tag 202 needs to transmit a signal 208, the update rate of this system is inversely proportional to the number of tags 202. This makes this system architecture unsuitable for cases where a large number of objects need to be tracked with a high update rate.
[0010] Figure 2Bis a block diagram of another positioning system proposed in the prior art, through which mobile transceivers 252 communicate with fixed transceivers 254 through bidirectional exchange of UWB signals 258. This bidirectional communication with fixed transceivers 254 enables mobile transceivers 252 to calculate the time of flight between themselves and the fixed transceivers. In this architecture, the communication between mobile transceivers 252 and fixed transceivers 254 must be coordinated so that the communication does not interfere. The knowledge of the time of flight to three or more fixed transceivers 254 enables each mobile transceiver 252 to calculate its relative position in the environment using trilateration. Since each mobile transceiver 252 communicates with each fixed transceiver 254, the update rate of the system is inversely proportional to the number of mobile transceivers 252 and the number of fixed transceivers 254. This architecture is therefore not suitable for systems where a large number of objects must be localized at high frequency (e.g. tracking a group of robots where the position measurement is used in the robot control loop to influence the robot’s actions). BRIEF DESCRIPTION OF DRAWINGS
[0011] Embodiments of the present disclosure are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which like references indicate similar elements, in which:
[0012] Figure 1A is a block diagram of an illustrative positioning system according to some embodiments of the present disclosure;
[0013] Figure 1B is a block diagram of an illustrative transceiver according to some embodiments of the present disclosure;
[0014] Figure 2A and 2B are block diagrams of two positioning systems known in the prior art;
[0015] Figure 3 and 4 are block diagrams illustrating different system architectures for transceiver interconnection according to some embodiments of the present disclosure;
[0016] Figure 5 is a block diagram of an illustrative self-localizing device according to some embodiments of the present disclosure;
[0017] Figure 6 is an illustrative timing diagram according to some embodiments of the present disclosure;
[0018] Figure 7A illustrates an illustrative plot of the channel impulse response of a channel according to some embodiments of the present disclosure;
[0019] Figure 7B is an illustration of an illustrative structure of a UWB signal according to some embodiments of the present disclosure;
[0020] Figure 8 is a block diagram of an exemplary positioning unit 152 including position update processing according to some embodiments of the present disclosure;
[0021] Figure 9A and 9B shows an exemplary plot illustrating possible effects of relative position, orientation and obstacles on the reception time stamp of a UWB signal according to some embodiments of the present disclosure;
[0022] Figure 10 is a block diagram of an exemplary self-positioning device that can be executed according to some embodiments of the present disclosure;
[0023] Figure 11 shows an exemplary mobile robot including a self-positioning device according to some embodiments of the present disclosure;
[0024] Figure 12 is a block diagram of an exemplary control unit that can be used with a mobile robot such as Figure 11 according to some embodiments of the present disclosure;
[0025] Figure 13A shows an exemplary system for use with an autonomous flying robot according to some embodiments of the present disclosure;
[0026] Figure 13B shows a plot of exemplary transmission and reception times of UWB signals transmitted by four transceivers and received by a self-positioning device or transceiver according to some embodiments of the present disclosure;
[0027] Figure 14A shows an exemplary transceiver network with a large number of transceivers according to some embodiments of the present disclosure;
[0028] Figure 14B shows an exemplary simplified transceiver network according to some embodiments of the present disclosure;
[0029] Figure 15A is a block diagram of an exemplary positioning system using data access points according to some embodiments of the present disclosure; and
[0030] Figure 15B is a block diagram of an exemplary positioning system according to some embodiments of the present disclosure in which self-positioning devices are equipped with data transceivers and in which the self-positioning devices are able to communicate with each other using the data transceivers. DETAILED DESCRIPTION
[0031] According to the present disclosure, the limitations of current systems for positioning have been reduced or eliminated.
[0032] Technical advantages of certain embodiments of the present disclosure relate to locating objects in three-dimensional space. Technical advantages of certain embodiments improve the accuracy of the location. Technical advantages of certain embodiments improve the rate at which location information can be obtained or updated.
[0033] Additional technical advantages of certain embodiments relate to the reception of wireless signals, for example, by a device to determine its own position. In some embodiments, reception of the location signals is not degraded when a direct line of sight between the receiving device and a sufficient number of signal transmitters cannot be established. For example, some embodiments allow operation in areas without good line of sight to global navigation satellite systems (GNSS) and indoors. In some embodiments, signals are not distorted by multipath, do not suffer from multipath fading observed in narrowband signals, or do not suffer from reduced signal quality when a direct line of sight is lacking in indoor environments. For example, some embodiments do not show performance degradation in closed environments, such as indoors, in forests, or in dense urban environments, for example, those where keeping track of GNSS signals becomes more difficult.
[0034] Technical advantages of some embodiments can allow multiple transceiver messages to arrive at a receiver antenna at sufficient time intervals, avoiding degradation of signal detection and reduction of performance of the location system.
[0035] Technical advantages of some embodiments make them available for real-time use and can be used by an unlimited number of receivers to determine two- or three-dimensional positions of the receivers in environments where rejection of global positioning systems or any environment where greater accuracy or system redundancy can be desired.
[0036] Technical advantages of some embodiments can result in higher performance robot control by enabling localization with higher update rates, lower latency, or higher accuracy than currently possible, improving the performance of current mobile robots and allowing new uses for mobile robots.
[0037] Additional technical advantages of some embodiments can allow a human, mobile robot, or other machine to be configured with a self-localizing device that can determine its 3D position in space without the need to emit a signal. This can improve localization performance and allow new uses of localization technology by providing regulatory advantages; by allowing scalability (e.g., the system can be used in parallel by an unlimited number of self-localizing devices); by allowing higher redundancy (e.g., non-emitting devices allow more emitting transceivers for a given network traffic load); by enabling more efficient bandwidth usage (e.g., lower emissions, less interference); by improving energy efficiency of UWB receivers (e.g., by not requiring energy for transmission); by enhancing the secrecy of operations; and by allowing data to be used locally where it is needed, resulting in improved update rates, speed, and system robustness.
[0038] Additional technical advantages of some embodiments can allow improved system performance by fusing data from several sources, including UWB signals, readings of global characteristics from multiple locations, and on-board motion sensors.
[0039] Additional technical advantages of some embodiments can be linked to providing a distributed localization system. Such a system can provide improved robustness and safety of robot operation, as it does not rely on sensor signals from a single source. It can also provide good performance degradation by providing redundancy; can allow identification and resolution of inconsistencies in data by providing redundant data; can provide higher performance by performing localization based on comparison of signals received from various transceivers; and can allow easy scalability by automatically adapting to the addition / removal of transceivers.
[0040] Still further technical advantages of some embodiments allow localization without a direct line of sight between transceivers and self-localizing devices. In addition, further technical advantages allow lower susceptibility to perturbations from radio frequency traffic, secure communication, and improved resistance to interference, noise, and congestion.
[0041] Additional technical advantages will be apparent to those of ordinary skill in the art upon reviewing the following description, the attached drawings, and the included claims. Additionally, while specific advantages have been enumerated above, various embodiments can include all, some or none of the enumerated advantages. No admission is therefore intended, nor should be inferred, that any of the advantages are necessary, desirable or important.
[0042] The present disclosure uses time-tagable signals. A time-tagable signal is a radio frequency (RF) signal, and each signal has a feature that can be detected and can be precisely time-tagged. Examples of features include a signal peak, a signal front, and a signal preamble. An example of a time-tagable signal includes a radio frequency signal with a well-defined, repeatable frequency increase over time or a frequency decrease over time. Further examples of time-tagable signals include a signal burst, a signal chirp, or a signal pulse. Further examples of time-tagable signals include a signal with a feature suitable for phase correction or amplitude correction techniques (e.g., a signal with a code with low autocorrelation values).
[0043] In some embodiments, the time-tagable signal is an "open loop" one-way radio frequency signal transmitted over a reception area. Examples include a DCF77 time code signal, a Global Positioning System P-code signal, and a Terrestrial Trunked Radio signal. In some embodiments, the apparatus is a non-emitting apparatus.
[0044] In some embodiments, the time-tagable signal uses a narrow frequency band. In some embodiments, a center frequency or carrier frequency in the ISM band is used. In some embodiments, a center frequency or carrier frequency in the range 1-48 GHz is used. In some embodiments, a center frequency or carrier frequency in the range 2.4-12 GHz is used. In some embodiments, a center frequency or carrier frequency in the range 3.1-10.6 GHz is used. In some embodiments, a higher frequency is used. Narrow band signals tend to be more affected by multipath fading than wide band signals (e.g., ultra-wide band (UWB) signals). In a narrow band signal, the signal duration is typically longer than the delay variance of the channel. In contrast, for a UWB signal, the signal duration is typically less than the delay variance of the channel. For example, in the case of a UWB system with a pulse duration of 2 nanoseconds, the pulse duration is significantly less than the channel delay variance. Thus, signal components can be easily distinguished, and UWB signals are robust to multipath fading.
[0045] In some embodiments, the time-tagged signal is a UWB signal. A UWB signal is spread over a large bandwidth. As used herein, a UWB signal is a signal spread over a bandwidth that is more than 125 MHz or 5% of the arithmetic center frequency, whichever is smaller. In some embodiments, a UWB signal is a signal spread over a bandwidth that is more than 250 MHz or 10% of the arithmetic center frequency, whichever is smaller. In some embodiments, a UWB signal is a signal spread over a bandwidth that is more than 375 MHz or 15% of the arithmetic center frequency, whichever is smaller. In some embodiments, a UWB signal is a signal spread over a bandwidth that is more than 500 MHz or 20% of the arithmetic center frequency, whichever is smaller. In some embodiments, a bandwidth in the range of 400-1200 MHz is used. In some embodiments, a bandwidth in the range of 10-5000 MHz is used. In some embodiments, a bandwidth in the range of 50-2000 MHz is used. In some embodiments, a bandwidth in the range of 80-1000 MHz is used. UWB technology allows an initial radio frequency (RF) signal to be spread in the frequency domain, resulting in a signal with a wider bandwidth than the frequency content of the initial signal. UWB technology is suitable for positioning systems because it can transmit very short duration pulses that can be used to very accurately measure the time of arrival of a signal and thus allow a large range of applications. UWB signals can be advantageously used for positioning systems because they have the ability to penetrate obstacles and allow to extend hundreds of meters without interfering with regular narrowband and carriers used in the same frequency band.
[0046] In some embodiments, the time-tagged signal can be measured to be within 0.6 nanoseconds relative to a clock. In some embodiments, the time of arrival of a time-tagged signal can be measured to be within 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 nanoseconds relative to a clock.
[0047] In some embodiments, the transmission times of two successive time-tagged signals are separated by 1-500 microseconds. In some embodiments, the transmission times of two successive time-tagged signals are separated by 400-2000 microseconds. In some embodiments, the transmission times of two successive time-tagged signals are separated by 1-1000 milliseconds. In some embodiments, a combination of time intervals is used. In some embodiments, no time interval is used.
[0048] In some embodiments, the average equivalent isotropically radiated power (EIRP) density of the signal is less than -40 dBm / MHz at all frequencies. In some embodiments, the average EIRP density of the signal is less than -80, -70, -60, -50, -30, -20, or -10 dBm / MHz at all frequencies.
[0049] In some embodiments, the maximum power of the transmitted signal is less than 0.1 mW per channel. In some embodiments, the maximum power of the transmitted signal is less than 1.0 mW per channel. In some embodiments, the maximum power of the transmitted signal is less than 100 mW per channel. In some embodiments, the maximum power of the transmitted signal is less than 500 mW per channel. In some embodiments, the maximum power of the transmitted signal is less than 10 W per channel.
[0050] In some embodiments, the lesser of the maximum power of the signal and the EIRP density of the signal is applied. In some embodiments, the greater of the maximum power of the signal and the EIRP density of the signal is applied. In some embodiments, one of the limit of the EIRP density of the signal and the limit of the maximum power of the signal is applied. In some embodiments, both the limit of the EIRP density of the signal and the limit of the maximum power of the signal are applied. In some embodiments, the limit is applied to narrowband signals. In some embodiments, the limit is applied to wideband signals.
[0051] In some embodiments, the typical effective range of the transceiver is between 1 m and 50 m. In some embodiments, the typical effective range of the transceiver is between 1 m and 100 m. In some embodiments, the typical effective range of the transceiver is between 1 m and 500 m. In some embodiments, the typical effective range of the transceiver is between 1 m and 1000 m. In some embodiments, the typical effective range of the transceiver is between 1 m and 5000 m. In some embodiments, the device can only receive UWB signals from a subset of the transceivers.
[0052] In some embodiments, a maximum data rate of 50 Mbps is used. In some embodiments, a maximum data rate of 5 Mbps is used. In some embodiments, a maximum data rate of 1 Mbps is used.
[0053] In some embodiments, a chirp spread spectrum (CSS) signal is used. In some embodiments, a frequency modulated continuous wave (FMCW) signal is used.
[0054] Some embodiments include a positioning unit. In some embodiments, the positioning unit can calculate at least one of: (i) an orientation or orientation information, (ii) a position, or (iii) a motion of the self-positioning device.
[0055] In some embodiments, the positioning unit computes a position of the self-locating device based on the reception times of the UWB signals and the known positions of the transceivers. In some embodiments, a time-of-arrival scheme is used. In some embodiments, a time-difference-of-arrival scheme is used. Multilateration requires the positioning unit to compute the time difference between the reception times of two UWB signals. By subtracting the time difference of the known signal transmission times from the difference of their reception times (also referred to as a "TDOA measurement"), the positioning unit can compute the difference in distance to the two transceivers from which the signals were transmitted (e.g., because the signal from transceiver 2 was received 1 ns later than the signal from transceiver 1, transceiver 2 is 30 cm farther away than transceiver 1). By computing the difference in distance between multiple transceivers, the positioning unit can be able to compute the position of the self-locating device by solving a hyperbolic equation system or a linearized version thereof. Methods of solving this equation system are known to those skilled in the art and can include non-linear least squares, least squares, Newton iteration, gradient descent, etc. Methods of multilateration require the time difference of the signal transmission times to be known.
[0056] In some embodiments, the positioning unit of the self-locating device can iteratively compute a position. In some embodiments, the positioning unit iteratively updates the position estimate whenever a UWB signal is received, without waiting for UWB signals to be received from all transceivers. In some embodiments, when a UWB signal is received, an adjustment to the current position estimate is computed depending on the difference between its reception time and the reception times of previously received UWB signals. In some embodiments, known filtering methods (e.g., Kalman filtering, particle filtering) are used in computing or applying this update. In some embodiments, the adjustment is computed based on the variance of the current position estimate (e.g., if the current estimate is relatively accurate, less adjustment will be applied). In some embodiments, the adjustment is computed based on the positions of the two transceivers from which UWB signals were transmitted. In some embodiments, the adjustment is computed based on a measurement model that describes the probability distribution of a TDOA measurement based on the current position estimate and the positions of the two transceivers. In some embodiments, this makes it possible to apply more or less adjustment depending on how accurate the TDOA measurement is determined to be (e.g., if the first transceiver is on a line connecting the current position estimate and the second transceiver, the TDOA measurement from the two transceivers can be considered unreliable and thus less adjustment is applied).
[0057] In some embodiments, the positioning unit updates the position estimate based on a system model that describes a probability distribution of the position of the self-localizing device. In some embodiments, the system model can be based on other estimated states (e.g., velocity or heading of the self-localizing device). In some embodiments, the system model can be based on input history (e.g., if an input command is likely to give motion in the positive x direction according to the system dynamics, then the new position estimate is more likely to be in the positive x direction than the negative x direction).
[0058] In some embodiments, the system model can be based on measurements from sensors or global properties. In some embodiments, the positioning unit can compute the position of the self-localizing device based on global properties. In some embodiments, the positioning unit can compute the position of the self-localizing device based on differences between global properties measured by the self-localizing device and global properties measured by one or more transceivers (e.g., if both the self-localizing device and the transceivers measure air pressure, then according to known relationships between altitude and air pressure, the relative altitude difference between the two can be computed).
[0059] In some embodiments, the positioning unit can use the history of the position estimate and the system model to compute other dynamic states of the subject, such as velocity or heading. For example, if the history of the position estimate indicates motion, then the velocity can be estimated. Further examples are if the history of the position estimate indicates motion in the positive y direction, and the system model indicates that only positive motion is possible (e.g., a sliding steering car), then the heading can be determined to be along the positive y direction.
[0060] In some embodiments, the position is a one-dimensional position, a two-dimensional position, a three-dimensional position, or a six-dimensional position (i.e., including position and heading).
[0061] In some embodiments, the relative position computed by the positioning unit is computed with a precision of 1 m, 20 cm, 10 cm, or 1 cm. In some embodiments, the time delay between reception of a UWB signal and computation of an updated position estimate provided by the positioning unit is less than 50 ms, 25 ms, 10 ms, 5 ms, 2 ms, or 1 ms. In some embodiments, the update rate of the system is greater than 1 Hz, 5 Hz, 10 Hz, 50 Hz, 250 Hz, 400 Hz, 800 Hz, 1000 Hz, or 2000 Hz for full position updates or for partial position updates.
[0062] In some embodiments, the positioning system includes at least 1, 2, 3, 5, 7, 10, 25, 50, 100, or 250 anchors. In some embodiments, the positioning system supports more than 1, 2, 3, 5, 10, 20, 40, 100, 200, 500, 1000, 5000, or 10000 self-localizing devices.
[0063] A clock as used herein refers to a circuit, structure, or device capable of providing a measure of time. The measure of time can be in any appropriate unit of time. For example, the measure of time can be based on a fundamental unit of seconds. As another example, the measure of time can be based on a count that increments at a particular rate. In some embodiments, a clock includes an internal oscillator for determining a measure of time. In some embodiments, a clock determines a measure of time based on a received signal (e.g., from an external oscillator).
[0064] In some embodiments, each transceiver can use its own onboard clock. In some embodiments, a single clock can generate a clock signal that is transmitted to each transceiver via a cable or wirelessly. In some embodiments, the clock signal can rely on at least one of a one-time code transmitted by a radio transmitter, or on a terrestrial radio clock signal, a GPS clock signal, and a time standard. In some embodiments, the clock signal can be based on a GPS-compliant oscillator, on a transmitter, or on a time estimate computed from at least two clocks to improve the accuracy or long-term stability of the clock signal.
[0065] A clock can use, for example, a crystal oscillator or a temperature-compensated crystal. In some embodiments, enhanced clock accuracy can be obtained through temperature stabilization via a crystal oven (OCXO) or through analog (TCXO) compensation or through digital / microcontroller (MCXO) compensation. In some embodiments, a centralized synchronization unit is used. In some embodiments, an atomic oscillator (e.g., rubidium) is used as a clock.
[0066] In some embodiments, a clock is constructed and arranged to have an Allan variance of at most (1 x 10 -8 ) 2 or (1 x 10 -9 ) 2 or (5 x 10 -10 ) 2 for averaging intervals between 5 milliseconds and 10 milliseconds or for averaging intervals between 5 milliseconds and 100 milliseconds or for averaging intervals between 1 millisecond and 1 second.
[0067] The device or transceiver can be equipped with analog and digital receive electronics. The receive electronics can amplify and convert the received signal to a baseband signal, which can then be demodulated and passed to central processing electronics. An important design aspect of a receiver is to minimize noise and distortion. This can be obtained by careful selection of components of the receive electronics, in particular those of the amplifiers, and by optimizing the circuit design of the receiver accordingly.
[0068] In some embodiments, the self-positioning device or the antenna, the analog reception electronics and the digital reception electronics of the self-positioning device are structured and arranged to receive two UWB signals within a time window of 2, 10, 50 seconds, wherein the time difference between the time stamps of the two UWB signals is within 0.6, 3 or 15 nanoseconds of the time difference between their reception times at the antenna of the device with respect to the clock of the device.
[0069] In some embodiments, the digital reception electronics of the device are further operable to time stamp the received UWB signals within less than 1 millisecond, 100 microseconds or 10 microseconds with respect to the clock of the device.
[0070] The device or transceiver can be equipped with analog and digital transmission electronics.
[0071] In some embodiments, the transceiver or the digital transmission electronics, the analog transmission electronics and the antenna of the transceiver are configured to transmit two UWB signals within a time window of 2 seconds, 10 seconds or 50 seconds, or are configured such that, with respect to the clock of the transceiver, the time difference between the transmission of the two UWB signals from the antenna of the transceiver is within 0.6 nanoseconds, 3 nanoseconds or 15 nanoseconds of the time difference between their scheduled transmission times.
[0072] In some embodiments, the scheduling unit is used to schedule the UWB signal transmission times. It is clear to the person skilled in the art that any error made by the transceiver with respect to this transmission schedule will affect the accuracy of the position calculated by the positioning unit.
[0073] In some embodiments, the scheduled time refers to the time when the first pulse of the signal leaves the antenna of the transceiver. In some embodiments, the scheduled time refers to the beginning of the start-of-frame delimiter (i.e. the point when the transmission of the signal changes from the repetition of the preamble to the transmission of the start-of-frame delimiter). In some embodiments, the device is structured and arranged to compare two UWB signals transmitted by the same transceiver.
[0074] In some embodiments, the transceivers coordinate their transmissions at the packet level. In some embodiments, packet emission overlaps are avoided. In some embodiments, the packets are emitted in a round-robin manner; at fixed intervals; in a specific time sequence; or sequentially. In some embodiments, the transceivers transmit packets simultaneously.
[0075] In some embodiments, each of the three or more transceivers includes a scheduling unit. In some embodiments, a single scheduling unit is operatively coupled to the three or more transceivers. In some embodiments, such operative coupling is a wired connection. In some embodiments, such operative coupling is a wireless connection. In some embodiments, such wireless operative coupling is implemented using UWB signals. In some embodiments, the scheduling unit uses an update rate that is lower than the UWB signal rate.
[0076] In some embodiments, the scheduling unit is operable to ensure at least a 5 microsecond, 10 microsecond, or 50 microsecond time separation between one transceiver terminating its transmission and a different transceiver beginning its transmission. In some embodiments, the scheduling unit is operable to monitor UWB signals. In some embodiments, the scheduling unit is operable to compute improved schedules. In some embodiments, the scheduling unit is operable to ensure at least a 1 microsecond, 5 microsecond, or 10 microsecond time separation between the end of one UWB signal and the beginning of a second UWB signal emitted by the same transceiver. In some embodiments, the scheduling unit is operable to maintain a memory of assignments of medium access control addresses and scheduled transmission times.
[0077] In some embodiments, each of the three or more transceivers includes a sensor. In some embodiments, the sensor is physically and operatively coupled to the transceiver. In some embodiments, the sensor is operable to provide data indicative of an orientation, position, or movement of the transceiver. In some embodiments, the sensor is structured to detect perturbations to the position or orientation of the transceiver.
[0078] In some embodiments, the device includes a sensor that is physically and operatively coupled to the device and is operable to provide data indicative of an orientation of the device. In some embodiments, the sensor is operable to provide data indicative of an orientation, position, or movement of the device. In some embodiments, the sensor is structured and arranged to provide data indicative of an orientation of an antenna of the self-localizing device.
[0079] Data from the sensor can be processed by the positioning unit or the position calibration unit. For example, data related to a landmark can be compared to other data (e.g., data related to another landmark, data from a memory, sensor data, data indicative of a position) to improve a position estimate or a position calibration unit. As another example, a comparison between a position of a landmark relative to a transceiver as detected by a first camera and a position of the same landmark relative to a self-localizing device as detected by a second camera can allow the positioning unit to improve a positioning estimate. The comparison can use data related to one or more landmarks. The comparison can use data related to observations by one or more vision sensors.
[0080] Typical examples of sensors that can be beneficially used as part of the present disclosure include optical sensors, accelerometers, magnetometers, and gyroscopes.
[0081] In some embodiments, micro-electro-mechanical systems (MEMS) or piezoelectric systems can be used to allow for the acquisition of the operational characteristics outlined in the present disclosure. Examples of such micro-sensors that can be beneficially used with the present disclosure include MEMS gyroscopes, MEMS accelerometers, piezoelectric gyroscopes, and piezoelectric accelerometers. In some embodiments, the use of micro-sensors allows for the use of one or more inertial measurement units (IMUs), each of which can combine multiple gyroscopes or accelerometers in each subsystem, or use a multi-axis gyroscope or accelerometer. In some embodiments, the selection of such micro-sensors allows for the creation or use of self-localizing devices that are suitable for highly dynamic movement, such self-localizing devices requiring low weight and low power consumption, but also requiring high performance. For example, a 3-axis MEMS gyroscope can be used to monitor the attitude of a self-localizing device and allow for the triggering of a signal in the event that an attitude threshold is exceeded. As another example, a MEMS gyroscope can be used to control a small flying robot equipped with a self-localizing device that hovers nearby, despite its low time constant. Examples of optical sensors include infrared sensors, linear cameras, optical flow sensors, and imaging sensors, among others.
[0082] Some embodiments include global property sensors, i.e., sensors that are operable to provide data representative of a global property.
[0083] Examples of global properties include fields having a determinable value at or each point in a region, such as gravitational, electromagnetic, hydraulic, and pneumatic. Further examples of global properties include radio frequency signal strength, global positioning system (GPS) signals, the Earth's magnetic field, the Earth's gravitational field, air pressure, landmarks, and radio time signals (such as those transmitted by a DCF77 time code transmitter). Examples of landmarks include the horizon, the sun, the moon or stars, mountains, buildings, and salient environmental features. Salient environmental features can include unique natural features such as mountains, unique buildings such as monuments, and other environmental features such as those used in simultaneous localization and mapping (SLAM). Further examples of landmarks include those features used in scale-invariant feature transform (SIFT) and speeded up robust features (SURF). Note that in the present disclosure, GPS or GNSS can be used as a placeholder to describe any similar signal produced by other global navigation satellite systems such as, for example, GLONASS, Galileo, IRNSS, or BeiDou-2, as well as their improved versions such as real-time kinematic (RTK) GPS or DGPS.
[0084] In some embodiments, the device and the transceiver are both configured to detect the same global property. In some embodiments, the transceiver is configured to transmit data indicative of the global property at the location of the transceiver to the device or another transceiver, and the device or another transceiver is configured to compare the data to data indicative of the same global property at the location of the device or another transceiver. In some embodiments, the global property can be associated with a global property model.
[0085] In some embodiments, the global property sensor is a direction sensor. The direction sensor can enable the transceiver to measure its direction relative to a frame of reference common to the transceiver and the self-localizing device. The transceiver can then transmit a signal indicative of the orientation of the transceiver, which is included as data (payload) within the UWB signal. In some embodiments, the transceiver is able to measure its orientation and transmit this orientation as payload of the UWB signal.
[0086] In some embodiments, the position calibration unit can compute an estimate of the position of the transceiver. In some embodiments, the transceiver position is computed once (e.g., as part of a calibration routine in the setup of the positioning system). In some embodiments, the transceiver position is computed continuously (e.g., each time new data related to the position of the transceiver becomes available). In some embodiments, the transceiver position unit is initialized with known, partially known, estimated, or partially estimated position information (e.g., initial transceiver distance, position, or orientation can be measured or entered manually).
[0087] Position calibration can be implemented in various ways. For example, the position calibration unit can compute the position of the transceiver based on time-stamped UWB signals received from other transceivers with known positions. This can allow, for example, the addition of additional transceivers to an existing transceiver network. In some embodiments, the position calibration unit operates similarly to the positioning unit, or vice versa. In some embodiments, the position calibration unit is operatively coupled to the compensation unit.
[0088] In some embodiments, a single position calibration unit can be used to compute the positions of multiple transceivers relative to each other. This can allow, for example, the initialization of a network of transceivers that do not yet have known positions. In some embodiments, multiple position calibration units are used (e.g., one per transceiver).
[0089] In some embodiments, the position calibration unit is implemented offboard the transceiver. For example, the position calibration unit can be implemented on a laptop computer that is connected to the transceiver using a cable. This can allow, for example, a more convenient interface to the operator.
[0090] In some embodiments, the synchronization unit is operable to synchronize at least one of (i) the offset of the first clock and (ii) the rate of the first clock based on the second clock. In some embodiments, the correction or the synchronization is computed based on at least one of the mean, the median and the statistical properties of the clocks of the multitude of positioning systems. In some embodiments, global properties that also provide timing information are used, such as those provided by GPS, DCF 77 and further systems. In some embodiments, the synchronization unit uses global properties that also provide timing information.
[0091] In some embodiments, the synchronization unit is operable to explicitly or implicitly take into account timing errors introduced by at least one of (i) a first difference between the rate of the device clock and the rate of the clock of the first communication transceiver; and (ii) a second difference between the rate of the device clock and the rate of the clock of a different, second communication transceiver.
[0092] In some embodiments, the synchronization unit is operable to perform the synchronization or to compute the clock correction based on a compensation computed by the compensation unit or data stored in the memory.
[0093] In some embodiments, the synchronization unit is operable to synchronize the on-board clock rate such that the statistical average error between the on-board clock rate and the median of the on-board clock rates of two other transceivers is less than ten parts per million or one part per million or one part per billion. In some embodiments, the synchronization unit is operable to synchronize the offset of the on-board clock such that the statistical average error between the offset of the on-board clock and the median of the on-board clock offsets of the two other transceivers is less than 10 nanoseconds or 5 nanoseconds or 1 nanosecond. In some embodiments, this is achieved by explicitly or implicitly taking into account timing errors introduced by one or more of the transceiver's antenna and the transceiver's analog and digital transmit electronics or by computing a clock correction to the on-board clock offset from a time-stamped UWB clock synchronization signal and data provided by the transceiver's memory unit or by altering the clock rate (e.g., altering the clock's voltage, temperature or crystal trim).
[0094] In some embodiments, the compensation unit is used to correct for signal delays. In some embodiments, the compensation is computed once (e.g., as part of a calibration routine) and stored in the memory. In some embodiments, the compensation is dynamically or continuously computed during operation.
[0095] The compensation unit calculates a compensation for the effects on the UWB signal from the time instant at which the UWB signal is scheduled to be transmitted at the transceiver to the time instant at which the UWB signal is time-stamped at the receiving electronics of the transceiver or device. These effects include effects on the self-localization device or transceiver machine as well as effects during the flight from the transmitting antenna to the receiving antenna. Some examples of effects include: (1) obstacles in or close to the direct signal path (e.g., obstacles in the lobe of the electromagnetic wave will also cause a change in the spectral shape), (2) transmission medium (e.g., transmission of different frequencies contained in the signal is not the same for all media), (3) variations in signal gain (e.g., a specific gain can be calibrated, but it can be preferred to change the gain to meet specific requirements of the use case), (4) variations in signal power (e.g., in practice, the actual transmitted power is not only influenced by the signal gain, but also by losses between the electronics of the transmitter and the antenna), (5) resonator trim (e.g., capacitors used to fine-tune the operating frequency of its crystal resonator clock), (6) changing system components (e.g., corrections that are specific to the concrete combination of components including antenna cables and connectors), (7) decay (e.g., the signal can be influenced by the degradation of system components over time, in particular antennas, cables, or connectors), (8) external interference sources (e.g., additional receiver and transmitter antennas as well as digital equipment, AC power equipment, etc. can cause interference), (9) operating environment (e.g., changes in temperature, humidity, magnetic fields, and other factors can influence the operation of the electronics and thus the spectral shape or its detection), (10) power supply (e.g., changes in the voltage supply can influence the operation of the electronics), (11) mounting point (e.g., metal objects and structures close to the antenna can cause interference; the antenna should be placed at least a quarter wavelength (e.g., more than 7.5 cm for a 1 GHz signal) away from metal objects and structures), (12) spectral bandwidth (e.g., the calibration is specific to the bandwidth used, for use in different regions, the bandwidth can need to be changed, e.g., to comply with regulated spectral limits), (13) multipath interference (e.g., signals reflected from different surfaces arrive at the receiver at slightly different times and intensities), and (14) aging of system components can also influence the measured delay, in particular for clocks, which continuously age even after the first weeks of their operation, with the highest quality crystals having an aging rate of 0.1 parts per billion (PPB) per day.
[0096] Compensation is typically achieved by correcting the reception time stamp or correcting the transmission time information (e.g., the transmission time stamp included as payload in UWB data) based on, for example, signal quality or group delay. This correction can be computed and applied immediately (e.g., by computing the correction for individual time stamps or modifying individual time stamps) or in batch (e.g., by computing the correction for time stamps in batch or modifying time stamps in batch). Compensation can use several data sources to determine the needed correction; examples of data sources include (i) data representations of the location and orientation of the transceiver and the device, (ii) data provided by on-board sensors, (iii) data stored in memory, (iv) data provided by the synchronization unit, and (v) quality metrics provided by the digital reception electronics.
[0097] In some embodiments, the compensation unit compensates for the effect of the location, orientation, or movement of the antenna of the device relative to the antenna of the transceiver. In some embodiments, the compensation unit compensates for the effect of obstacles. In some embodiments, the compensation is performed by computing (i) a data representation of a correction to a distance, time, or duration, (ii) a data representation of a correction to a comparison of first and second distances, times, or durations, or (iii) a data representation of a correction to a comparison of multiple distances, times, or durations. In some embodiments, the data representation of the correction is provided to the positioning unit.
[0098] In some embodiments, the compensation unit can take into account obstacles traversed by the UWB signal between the antenna of the device and the antenna of the transceiver. These obstacles and their location relative to the transceiver, their characteristics, etc. can be known from blueprints or from on-site measurements. Obstacles can also be determined during operation as part of a calibration routine, be manually entered, or a combination of both (e.g., manually entered and adjusted during operation).
[0099] Determining obstacles during operation can be achieved, for example, by using quality metrics related to the received signals. Since UWB signals cover a wide range of frequencies, and the transmission of electromagnetic waves depends on both the frequency of the waves and the material they pass through, differences in the frequency spectrum of the UWB signal at the receiving device can be used to indicate the presence of an obstacle in or near the path of the signal. For example, an attenuation of a certain frequency range in the received frequency spectrum or the complete absence of a specific frequency range can indicate the presence of an obstacle in the path between the transceiver and the receiver that absorbs that specific frequency. Conversely, an increase in certain frequencies can indicate an obstacle near the direct path of the signal that reflects certain frequencies towards the receiver. However, even a simple change in the shape of the frequency spectrum of the UWB signal over time can provide useful information and can be used as a confidence measure for the ranging measurements, for example when fusing data from multiple measurements into an estimator by the positioning unit or by the compensation unit. This is especially important for obstacles close to the transmitting or receiving antennas, including the transceiver / device's own electronic components and housing and its mounting point. This can also be achieved, for example, by comparing the relative distance between the transceiver and the device calculated from the travel time of the UWB signal to a relative distance between the transceiver and the device calculated by the positioning unit and using a compensation for the quality metrics (e.g. measurement noise, multiple measurements over time / by different devices / at different relative orientations / at different distances / at different directions such as the receiving electronics, the synchronization unit, the compensation unit or the positioning unit can provide in real-time or from memory). This can also be achieved by a three-dimensional reconstruction of the obstacles (e.g. using Simultaneous Localization and Mapping (SLAM)), in some embodiments by combining data from multiple ranging measurements. For example, a large amount of ranging data from operating multiple self-localizing devices and transceivers over an extended period of time can be used. The reconstruction can also be assisted by assumptions about the obstacles (e.g. constraints on their size, their orientation in space, their surface properties (e.g. flat surfaces), their material (e.g. homogenous obstacles), etc.) or by using methods for point cloud matching (e.g. to detect known obstacles from a candidate library). The compensation for the obstacles can also be assisted by using data from the receiving electronics (e.g. peak shape / spectrum shape) in combination with a model of the influence of the obstacles or the transmission medium on the peak / spectrum shape. Data related to the obstacles, their influence on the UWB signal or data related to the calculation of the compensation values can be stored by the compensation unit in a memory for future use, for example as a lookup table of compensation values for different regions of the space.
[0100] In some embodiments, the compensation unit can also use, as part of its calculations, information provided by other system components or data from memory (e.g., data related to previous UWB signals from the same transceiver, data related to characteristics or settings of the positioning system or components thereof, data related to the communication architecture, data including the position, orientation, and mounting of the transceiver in space, data related to the settings of the transceiver) such as the receiving electronics (e.g., providing quality metrics, group delay of UWB signals), the positioning unit (e.g., providing a priori estimates of the position and orientation of the device, obstacles), the synchronization unit (e.g., providing information about the behavior of the local clock). An interesting combination can result from the use of SLAM, which can be used as part of the estimates performed by the positioning unit and which can help determine obstacles from the reconstruction of the environment, which can then be used by the compensation unit. Another interesting combination can result from the use of sensors for detecting the absence of movement. For example, a sensor can be used in some embodiments to detect that the self-positioning device is not moving (e.g., by detecting that the output of an accelerometer sensor has remained below a certain threshold for a certain amount of time). The compensation unit can use the detected absence of movement of the device to calculate an improved compensation by averaging the UWB signals over the duration of the absence of movement. Similarly, the positioning unit can use the detected absence of movement to improve its positioning estimates. As another example, the central processing electronics can use the detected absence of movement in some embodiments to calibrate the MEMS gyroscope.
[0101] In some embodiments, the compensation unit can also take into account the effect of the relative orientation, direction, and distance of the antenna of the device with respect to the antenna of the transceiver. This is important due to the difficulty of creating an omnidirectional antenna for UWB. It is also important because some devices can be receiving signals from a large number of transceivers depending on their position in space with respect to the transceiver or depending on the communication architecture used, can be receiving signals at a higher update rate, or can be receiving signals that have a higher quality than others. Corresponding values related to the calculation of the compensation values can be determined as part of a calibration routine or during use (e.g., provided by an operator) and can be improved using assumptions (e.g., radiation symmetry) or using data from other system components as described above. They can then be stored in memory for use, for example, as a lookup table of compensation values for different pairwise combinations of relative antenna orientation, direction, and distance.
[0102] In some embodiments, the compensation unit can also take into account the effects of aging (e.g., corrosion) or other time-dependent changes (e.g., warming / cooling) of the components. The corresponding data related to the calculation of the compensation values can be determined as part of a calibration routine or during use and can be refined using assumptions (e.g., models such as the radiation pattern of an antenna) or using data from other system components as described above. They can then be stored in a memory unit for use, e.g., as a look-up table of compensation values for different changes as a function of time or as a function of sensor data.
[0103] In some embodiments, the compensation unit can also take into account the effects of external interference sources, such as changes in the operating environment (ambient temperature, humidity, barometric pressure) that can affect both the operation of the electronic components and the propagation characteristics of the UWB signals and that can be determined by sensors. Other examples of external sources include indirect consequences of the operating environment or obstacles, such as multipath interference. The corresponding data related to the calculation of the compensation values can be determined as part of a calibration routine or during use and can be refined using assumptions (e.g., a model of the effect of humidity on UWB signal propagation) or using data from other system components as described above. They can then be stored in a memory for use, e.g., as a look-up table of compensation values for different changes as a function of environmental data transmitted to the compensation unit (e.g., from an on-board or external weather station) or environmental data from on-board sensors of the device.
[0104] In some embodiments, the compensation unit can also take into account the effects of system settings or characteristics, such as signal gain, signal power, oscillator trim, power supply voltage, changes in spectral bandwidth, or modified system components. Again, the corresponding data related to the calculation of the compensation values can be determined as part of a calibration routine or during use and can be refined using assumptions (e.g., models) or using data from other system components as described above. The performance of the compensation unit can also be improved by allowing the compensation unit to have access to the corresponding system data and, if available, to sensor readings (e.g., as detected on-board or as detected externally and transmitted to the compensation unit). They can then be stored in a memory unit for use, e.g., as a polynomial function of the system settings of the characteristics, or as a look-up table for the settings / characteristics.
[0105] In some embodiments, the compensation unit can also take into account the effects of system components. Other electronic components, including those in the particular amplifiers, analog receive and transmit electronics, antennas, and power supplies, also have important effects on timing errors, signal quality, or group delay. While errors can be reduced through proper circuit design and in particular through optimization of the free configuration capability of the spectral bandwidth of the transmitter and the free configuration capability of the transmit power of the transmitter, the compensation unit can still be used as an alternative or in addition to optimizing circuit design. Since the spectral shape of the transmission depends on the layout of the circuit board of the transceiver and on nearby external components, an adjustable transmit spectral shape is another consideration that allows optimization of the spectral masking of the transmitter. In addition to the power of the signal, the performance of the positioning system is also affected by the quality of the signal and the group delay of the signal. This can be improved by optimizing the UWB antennas to preserve the integrity of the transmitted signal and in particular to maintain the sharp pulse profile used to transmit the data. The design can also be further optimized for a particular application by selecting on-board antenna connections that allow easy evaluation of different antenna options, creating distributed antennas to increase the transmission range, designing the system with multiple antennas to increase throughput and reception reliability, optimizing the efficiency of the antennas in converting electromagnetic waves to electrical current and vice versa to reduce the power consumption of the system, optimizing for low-cost manufacturing (e.g., printing) that allows evaluation of a wide range of design options, and comparing the performance of directional antennas and omnidirectional antennas to optimize for a particular use case. Furthermore, the design can be improved by selecting amplifiers and other components that are optimized for low noise and high thermal stability. Corresponding data related to the calculation of the compensation values can be determined from the characteristics of the above system components, e.g., as part of a calibration routine or during use, and can be improved using assumptions (e.g., models, data from a specification sheet) or using data from other system components as described above (e.g., calibration data stored in memory).
[0106] In some embodiments, the compensation unit can use data from the memory or can extrapolate data related to compensation values from past observations. For example, the compensation unit can compare data related to UWB signals traveling between the self-localizing device and a first transceiver and data related to UWB signals traveling between the self-localizing device and a second transceiver to calculate an antenna delay associated with the self-localizing device. As another example, the compensation unit can compare data related to multiple UWB signals traveling between multiple transceivers to calculate an idiosyncratic delay for each transceiver. As another example, the compensation unit can compare data related to UWB signals traveling between the self-localizing device and multiple transceivers and data from the localization unit to calculate an idiosyncratic delay. As another example, the compensation unit can compare data related to UWB signals traveling between the self-localizing device and a transceiver at a first point in time or at a first location and data related to UWB signals traveling between the self-localizing device and the transceiver at a second point in time or at a second location to calculate an idiosyncratic delay. In some embodiments, similar comparisons can be used to allow the compensation unit to calculate other compensations, including the compensations listed in the preceding examples.
[0107] Similar strategies to those outlined above for the compensation unit and UWB signals can also be used by the synchronization unit or for UWB clock synchronization signals.
[0108] It will be appreciated that while compensation and aspects thereof are sometimes explained with respect to signals traveling between a device and a transceiver, the explanation can be equally valid and can be used similarly for signals traveling between two devices or between two transceivers.
[0109] The control unit is used to generate control signals for actuators in dependence on data received from the localization unit (e.g., position estimates) or sensors (e.g., on-board sensors) or global properties (e.g., atmospheric pressure).
[0110] The control unit can implement control laws that are well-established or widely used in the art. Examples of such control laws include PID control; model predictive control; sliding mode control; full state feedback; and backstepping control. Depending on the control law, the control unit can use state estimates provided by the localization unit.
[0111] The control unit can calculate control signals for individual actuators. In some embodiments, the control unit calculates different sets of control signals for different sets of actuators. For example, the control unit can calculate a first set of control signals for two actuators of a first axis of a first module or robot or a second set of control signals for a second axis of a second module or robot.
[0112] The actuators can belong to the group of electronic, magnetic, and mechanical engines of mobile or control mechanisms or systems. Examples include piezoelectric actuators, brushless motors, and servo motors.
[0113] In some embodiments, the actuators of the device are configured to move the device in three translational degrees of freedom of the device. In some embodiments, the actuators are configured to move the device in three rotational degrees of freedom of the device. In some embodiments, the actuators are structured and arranged to move a part of the device, such as an antenna or effector. In some embodiments, multiple actuators are used in combination.
[0114] In some embodiments, the actuators of the device are configured to move the position of the device by at least 30 cm. In some embodiments, the actuators of the device are structured and arranged to move the position of the device by at least 100 cm. In some embodiments, the actuators of the device are structured and arranged to move the rotation of the device by at least 30 degrees. In some embodiments, the actuators of the device are structured and arranged to move the rotation of the device by at least 90 degrees.
[0115] Figure 1A A block diagram of an illustrative positioning system 100 (sometimes referred to herein as a "network") is shown that includes three transceivers 110 and two self-locating devices 130. Each of the three transceivers 110 sends a time-stampable positioning signal 102. In some embodiments, the three stationary transceivers 110 have known relative positions to each other. In some embodiments, the three transceivers 110 have synchronized clocks 300. The transceivers are sometimes referred to herein as "anchors" or "beacons." It will be understood that while three transceivers and two self-locating devices are shown in Figure 1A In some embodiments, the positioning system 100 includes more than three transceivers 110 and more than two self-locating devices 130. In some embodiments, the positioning system 100 includes fewer than three transceivers 110 and fewer than two self-locating devices 130.
[0116] The two mobile self-locating devices 130 receive the time-stampable signals 102. Each mobile self-locating device 130 can use the signals 102 to calculate its position relative to the transceivers 110. In some embodiments, this is done by time-stamping the signals 102, converting the time stamps to distances, and using the distances to calculate the relative position. The conversion can use an estimate of the speed of the signals 102 in the transmission medium (e.g., the speed of light in air). The conversion can be done using a positioning unit 152. The positioning unit 152 can calculate the position of the self-locating device relative to the positions of the known transceivers 110 by trilateration or multilateration. The time-stamping can be done with sufficient accuracy by the digital receive electronics 148 and the clock 300.
[0117] Figure 1A Each transceiver 110 includes analog and digital electronic components. The antenna 112 is coupled to the analog transmit electronics 116. The analog transmit electronics 116 can produce an analog transmit signal from at least one digital data packet. The digital data packet is provided by the digital transmit electronics 118. An analog pulse generator can be used to produce the analog transmit signal. The analog transmit signal can also be amplified by an amplifier before being passed to the antenna 112 for transmission.
[0118] In Figure 1A The transmit electronics 116, 118 are used to convert payload data (sometimes referred to as "payload") into signals 102, which can then be transmitted by the transceivers 110. Here, UWB signals 102 are used. A single UWB signal 102 transmitted by a single transceiver 110 can be received by multiple devices 130. Each device can use information obtained from the multiple signals 102 to calculate its position without transmitting a signal of its own.
[0119] A clock 300 is coupled to the transmit electronics 116, 118 and provides timing information for transmitting the UWB signals 102. The clock 300 can include an on-board clock, or can have a wireless or wired connection (not shown) that receives time information from an external clock (not shown), for example at a remote location.
[0120] The scheduling unit 150 can be used to coordinate transmissions (e.g., UWB signals 102) from the three transceivers 110, which can operate to schedule the transmissions of the UWB signals 102. The scheduling unit 150 can provide sufficient time intervals between UWB signals to avoid transceiver messages arriving at the receiver's antenna 132 without sufficient time intervals, which can result in attenuated signal detection and, in turn, reduced performance of the positioning system 100. In some embodiments, the scheduling unit 150 can implement an ALOHA protocol to reduce or prevent the effects of insufficient time intervals. In some embodiments, the signal transmissions can follow a pre-programmed order, or the scheduling can be centrally performed and communicated to each transceiver. In some embodiments, the scheduling can be performed by each transceiver. For example, the scheduling for a transceiver can be based on information (e.g., a ranked list or broadcast schedule of other transceivers in range) related to other transceivers stored by the transceiver.
[0121] The analog transmit electronics 116 are coupled to digital transmit electronics 118, which together allow for transmission of the UWB signal 102. This transmission can be performed such that the transmission of the signal 102 from the antenna 112 occurs precisely at a certain transmission time with respect to the clock 300. This can be achieved using the digital transmit electronics 118. The digital transmit electronics 118 can coordinate its operation with the scheduling unit 150. The transmission of the signal at a certain time is preferably performed such that a certain symbol is emitted from the antenna 112 at that certain time. For a transmission conforming to the IEEE 802.15.4 standard, a common choice for the symbol to be transmitted at that time is the start of the frame start delimiter, i.e., the point where the transmitted signal changes from repeating the preamble to transmitting the frame start delimiter. The digital transmit electronics 118 can use the signal provided by the clock 300 as a reference in this transmission at that certain time; the transmission time can thus be expressed with respect to this clock.
[0122] Figure 1A The two self-localization devices 130 shown in Fig. 1 are each configured to receive the UWB radio signal 102 transmitted by the transceiver 110 through the antenna 132, the analog receive electronics 136, and the digital receive electronics 148. The receive electronics 136, 148 can precisely determine the reception time at which the transmitted signal arrives at the antenna 132. Determining the reception time of a signal ("time tagging") can be performed by determining the time at which a symbol is detected. For a transmission conforming to the IEEE 802.15.4 standard, a common choice for the symbol to be time tagged is the start of the frame start delimiter (i.e., the point where the transmitted signal changes from repeating the preamble to transmitting the frame start delimiter). The digital receive electronics 148 uses the signal provided by the device's clock 300 as a reference in this time tagging process. The time tagging can thus be expressed with respect to this clock. In some embodiments, the clock 300 comprises an on-board clock. The receive electronics 136, 148 can also provide additional metrics related to the received signal 102. Quality metrics can for example include signal strength, reception time standard deviation, or noise characteristics of the signal. Quality metrics can be computed based on absolute values (e.g., absolute signal strength) or based on relative values (e.g., signal strength differences). Quality metrics can also be computed by comparing signals. For example, quality metrics can be computed based on a comparison of a signal over time, between signals from different transceivers, between signals received from different directions, a comparison of a signal to a threshold, a comparison of a signal to its expected characteristics, etc. The comparison can use individual signal characteristics (e.g., peak power) or overall signal (e.g., spectral shape of the signal). Quality metrics can for example be used to determine whether the signal 102 traveled in line-of-sight, or what material the signal 102 has passed through, or how the signal 102 has been reflected.
[0123] Each device 130 can also include a global property sensor 158. Global properties can allow for more accurate calculation of the relative position of a self-localizing device 130 by providing additional reference data relative to a reference point (e.g., a transceiver or coordinating system). This can be accomplished by equipping at least one transceiver 110 and self-localizing device 130 to detect global properties. The accuracy of a positioning system can be improved by a method comprising the steps of: (i) sending a global property reading of a transceiver to a device, (ii) comparing the reading of the global property of the transceiver at its location to the reading of the global property of the device at its location; (iii) using a model of the global property ("global property model") to transform the comparison into data related to orientation, position, or movement; and (iv) appropriately fusing this data with other sensor data by using an estimator. Steps (ii) and (iii) can be accomplished using a positioning unit 152, such as the one shown in FIG. 1 as part of a device 130. The global property model allows for the conversion of one or more global property readings into data that can be processed by the positioning system (e.g., an equation describing the change in air pressure with altitude / height). The model can take various forms, such as a function or a lookup table. Figure 1A
[0124] The use of data from one or more global property sensors 156, 158, in addition to other data provided by the positioning system 100, such as data from local onboard sensors 155, can be particularly useful when system sensor errors occur or when sensors have a high noise ratio. For example, in an exemplary embodiment for an outdoor installation, a device and multiple transceivers can be equipped to receive global positioning system signals in addition to UWB signals 102. This can allow the device to determine not only its position relative to the transceivers, but also to use a global reference frame for the positioning unit 152. Furthermore, the combination of positioning modes can allow for the detection of erroneous data by comparing readings from two independent measurement systems. The positioning system can also be improved by equipping the transceivers and the device with additional sensors 156, 158, such as barometers, to detect global properties. This can be particularly advantageous to allow the positioning unit 152 to obtain more accurate, more reliable, or faster positioning in the vertical direction, for which global positioning system and UWB can provide poor information due to the non-ideal positioning of the UWB transceivers (typically all on the ground plane below the device) and the global positioning system satellites (high up in the sky, typically high above the device).
[0125] Global signals can also be used to determine the relative orientation of the transceiver's antenna 112 and the receiver's antenna 132, which can have a significant impact on signal quality or group delay, and thus on their calculated relative positions. Orientation determination can be achieved, for example, by detecting the transceiver's gravity vector (e.g., using an accelerometer), transmitting this information to the device (e.g., as part of the payload of the UWB signal), and comparing this information with the gravity vector detected by the device (possibly corrected for the effects of the device's motion) using a model of the antenna orientation relative to their accelerometers for each transceiver and device. This comparison can be performed using a compensation unit.
[0126] In addition to the sensor 158 that uses global characteristics as described above, each self-positioning device may also be equipped with an onboard sensor (155).
[0127] The positioning unit 152 uses data to calculate a position estimate. This data may include the UWB signal 102, data from one or more onboard sensors 155, data from one or more external sensors 156, data from one or more global characteristic sensors 156, 158, or other data. Data associated with the UWB signal 102 may include payload, timestamps, signal characteristics (e.g., signal strength, peak shape, etc.), etc. This can be achieved by using an estimator to calculate an estimate of the position (and possible orientation or motion) of the device 130 based on the current values of the fused data and other information (e.g., knowledge of the input history, the device's dynamic model).
[0128] Each individually received UWB signal 102 can be recursively used to provide an updated (posterior) position estimate by fusing the UWB signal with a previous (a priori) estimate. In some embodiments, an extended Kalman filter, complementary filter, particle filter, Luenberger observer, or any other suitable technique can be used to recursively compute the estimate.
[0129] The positioning unit 152 can collect a number of UWB signal receptions by storing the UWB signals in a memory and batching the UWB signals (after receiving a predefined number of signals or at fixed time intervals). The batching method can be based on multi-point positioning technology by decoding the time difference of arrival (TDOA) measurement for the location of device 130.
[0130] In some embodiments, a combination of recursion and batch processing can be used.
[0131] Memory unit ( Figure 1AThe memory (not shown in FIG. 1) can be used to store information such as received UWB signals 102 for batch processing, current position estimates, or parameters for recursive computation and sensor fusion. The positioning unit 152 can also use data (e.g., compensation values) from the compensation unit (not shown in FIG. 1) or information (e.g., quality metrics) related to received UWB signals 102 generated by the digital reception electronics 148. Figure 1A
[0132] The cause of the variation in signal quality or group delay can be that the transceivers and the device are small and can operate relatively close to each other. This can result in a variety of relative orientations, relative distances, and relative directions of the transmitter antennas 112 with respect to the receiver antennas 132 that are used in typical applications and encountered during typical applications, such as multiple transceivers located on a plane and the device operating above or below the plane, or multiple transceivers located around a volume and the device operating within the convex hull of the volume.
[0133] Unlike in other positioning systems, here the signals 102 that arrive at the device can have varying quality, or can have different group delays. In some embodiments, the positioning unit 152 can be used to improve the position estimates relative to existing positioning systems by using characteristics of the UWB signals and quality metrics related to the received UWB signals, such as quality metrics provided by the reception components (e.g., UWB peak signal strength, UWB peak shape). This can be done, for example, by associating the measured variations with the signal metrics, such that measurements with higher variations have less influence on the state estimates of the positioning unit. As another example, the positioning unit can put more emphasis on data independent of the UWB signals (e.g., inertial sensors, global characteristics). As another example, the positioning unit can discard measurements from certain transceivers that do not meet quality metrics such as minimum signal quality or group delay.
[0134] Unlike existing systems, here the positioning unit 152 can be located on the device 130, since the UWB signals traveling from the transceivers to the device can contain enough information to allow the device to self-locate. For example, the transceivers can be synchronized and the device can know the locations of the transceivers.
[0135] The position, orientation or motion of a transceiver can change during use. The positioning unit 152 can take this into account. As outlined above, in some embodiments the transceivers in the network are assumed to have known positions. Changes in these positions, such as caused by an unexpected movement of a single transceiver, can decrease the positioning performance. This can be avoided by equipping the transceivers 110 with sensors (not shown) such as accelerometers that are operable to detect such unexpected movements. The transceivers can then monitor the sensor readings and, if the readings exceed a certain threshold, communicate the readings to the positioning unit (e.g. by sending corresponding information as part of the UWB signals 102 of the transceivers). The positioning unit can then correct for this change in position, orientation or motion of a transceiver, e.g. by discarding measurements of a transceiver of interest over a period of time, or by placing less emphasis on the measurements as described above. The positioning system can also detect this type of disturbance by equipping the transceivers to monitor their own position, such as by recording the position of the transceiver in memory and by periodically re-evaluating the position of the transceiver, e.g. by re-running the transceiver position calibration.
[0136] During typical use, the device 130 can operate in the vicinity of and move around obstacles in the space. The positioning unit 152 can take into account other known factors that affect the quality of the information provided by individual transceivers. For example, the positioning unit 152 can use a map of the relative positions of the transceivers and obstacles and an estimate of the position of the device in the space to determine that a UWB signal travelling from a certain transceiver to the device can have passed through an obstacle or have been reflected. This information can then be used to correct its position estimate as described above, possibly taking into account additional information such as obstacle characteristics (e.g. thickness, material or obstacle shape).
[0137] The positioning system can use methods such as multilateration or trilateration, which results in different sensitivities to measurement noise based on the spatial distribution of transceivers and the position of the device. The positioning unit 152 can take into account variations in the quality of information provided by individual transceivers by considering the spatial distribution of the individual transceivers, and correct its estimates of position by considering a topology of known relative positions or orientations of transceivers or devices (e.g., during position calibration and stored in memory). Even spatial knowledge such as the antenna orientation of a subset of transceivers (e.g., determined by sensors of the transceivers and communicated to the positioning unit 152) can be valuable and can be used to improve the estimates. Furthermore, by providing additional constraints on the data processing, assumptions (e.g., that all transceivers are located in a plane or that all transceivers are stationary) can significantly improve the positioning accuracy. Such prior knowledge, even partial or very approximate, can be used to initialize the positioning unit (e.g., to provide a priori for the initial position estimate of the positioning unit). Furthermore, global properties detected by global property sensors 156 on multiple transceivers 110 can be used to improve the positioning accuracy by providing additional information for the data processing.
[0138] Furthermore, by sharing information among multiple transmitters or devices, the accuracy of the estimates computed by the positioning unit 152 can be significantly improved. For example, obtaining ranging estimates at a self-positioning device from more than four transceivers results in an over-determined system, which allows the self-positioning device to significantly reduce the positioning error, e.g., by solving a least squares solution. As another example, multiple devices can exchange or pool their data to improve their estimates in a particular region of space or at a particular time during their operation.
[0139] The global property sensors 156, 158 can also improve the performance of the positioning unit 152 by providing additional data available at both the transceivers 110 and the device 130.
[0140] The positioning unit 152 can provide various outputs (e.g., position, velocity) in various forms. In some embodiments, the positioning unit 152 outputs position and heading information in NMEA 0183 format (a standard format for Global Positioning System receivers).
[0141] Figure 1Bis a block diagram showing an exemplary transceiver 110 according to some embodiments of the present disclosure. Each of the transceivers 110 can include an antenna 112 coupled to analog transmit electronics 116 and analog receive electronics 160. In some embodiments, a transmit / receive switch is used to connect the antenna to one or the other of the electronics 116, 160. In some embodiments, the transceiver 110 can be used in a positioning system 100 of Figure 1A
[0142] The analog receive electronics 160 are coupled to digital receive electronics 164, and together they allow for the reception of UWB signals 102 transmitted by other transceivers 110. The analog and digital receive electronics 160, 164 can have similar capabilities as the analog and digital receive electronics on the self-locating device 130 of Figure 1A For example, the analog and digital receive electronics 160, 164 can convert the UWB signals 102 into data (payload), determine precisely the time at which the transmitted signal arrived at the antenna 132, and can provide additional quality metrics related to the received signal 102, such as signal strength, standard deviation of the time of reception, and metrics for determining whether the signal traveled in a line of sight, among others.
[0143] The digital receive electronics 164 are operatively coupled to a synchronization unit 174, which can be used to identify and compensate for the clock 300 of any transceiver that is not operating in perfect synchronization with the clocks of the other transceivers. Upon reception of a UWB radio signal, the received data, time stamp, and quality metrics are sent to the synchronization unit 174. The synchronization unit 174 can compare the time stamp of reception to previous time stamps of reception, the transmission time information included in the data (payload) of the UWB transmission 102, and the transmission time information included in previous UWB transmissions 102. From this information, the synchronization unit 174 can calculate the current behavior of the clock 300, such as the current clock rate of the clock 300, or the current rate of change of the clock rate. In addition, the synchronization unit 174 can determine the time of flight of the UWB signals between the stationary receivers by evaluating the differences between locally measured time stamps of reception, locally set times of transmission, measured time stamps of reception reported from other transceivers, and set times of transmission of other transceivers. By carefully correcting for errors such as different clock offsets, clock rates, and signal propagation times, the synchronization unit 174 can calculate corrections to allow the transceivers to obtain a common, synchronized reference time. In some embodiments, the synchronization uses the UWB signals 104.
[0144] Time synchronization between transceivers is advantageous because any offset in the transmission timing can translate into an error in the positioning of the self-locating device.
[0145] Figure 1B The transceiver 110 can also comprise a sensor 154 and a global property sensor 156. Both of these sensors are coupled to the digital transmit electronics 118. This enables signals representing measurements made by the sensor 154 and the global property sensor 156 to be included in the data transmitted by the digital transmit electronics 118, the analog transmit electronics 116 and the antenna 112 in the form of the UWB signal 102.
[0146] In some embodiments, the sensor 154 or the global property sensor 156 can be used to sense the orientation of the transceiver. Where the orientation of the transceiver is known, a self-localizing device (such as the device 130) receiving UWB signals from the transceiver can be able to compensate for signal delays introduced by the relative orientation of the antenna 112 of the transceiver relative to the antenna (such as the antenna 132) of the self-localizing system. This can be achieved, for example, by transmitting the detected orientation of the transceiver as part of the UWB signals it transmits. In Figure 6 and Figure 9A and 9B In the above, the delays introduced by the relative orientation of the antennas 112 and 132 are further described, and methods for compensating for these delays are described.
[0147] Each transceiver 110 can be equipped with a memory 170, which can be used to store data such as configuration data, desired signal amplification, synchronization data (such as offset or rate correction for a clock) or range accuracy calibration data. The memory 170 can also be used to buffer data after reception and before transmission. In some embodiments, the memory 170 can be rewritable multiple times, or a non-volatile memory.
[0148] Figure 1B The illustrated transceiver can also comprise a position calibration unit 180. The position calibration unit 180 can be used to compute an estimate of the position of the transceiver 110 (such as the position of the transceiver relative to other transceivers). This can be achieved, for example, by using techniques similar to those available to the positioning unit 152. For example, the position calibration unit 180 can fuse data from the on-board sensor 154 and the on-board global property sensor 156 (connection not shown) with data from its memory 170 and data received from other transceivers via the digital receive electronics 164 to obtain a position estimate. The computed position estimate can then be stored in the memory 170. The position estimate can also be transmitted to other transceivers 110 or self-localizing devices (such as the device 130) for example as part of the signals transmitted by the digital transmit electronics 118. Figure 1B Figure 1A
[0149] Figure 1B An illustrative transceiver (sometimes referred to herein as a "wireless transceiver" or "wireless UWB transceiver") is shown that receives and processes wireless signals 104 from other transceivers. This is accomplished by a transceiver 110 having analog receive electronics 160 and digital receive electronics 164 that are operable to receive signals 104 transmitted by other transceivers 110.
[0150] The first transceiver 110 can use one or more signals 104 from a second transceiver 110 or from a plurality of other transceivers 110 to adjust its transmission schedule to, for example, provide better time spacing between transmissions. This can be accomplished, for example, by the scheduling unit 150 storing in memory 170 the times at which signals 104 are received from other transceivers 110 in the network (e.g., network 100) and subsequently adjusting the local transmission schedule based on these times. In some embodiments, the better time spacing between transmissions results in reduced interference between signals 102 or 104. In some embodiments, a measure of the time spacing between signals 102 can be a metric used for evaluation or when improving the performance of the positioning network 100. Figure 1A
[0151] In some embodiments, the signals 104 can be used by the transceivers 110 to indicate the occurrence of an event. In some embodiments, the signals 104 can be used by the transceivers 110 to trigger motion of other transceivers 110. In some embodiments, the motion results in scheduling of signals 102. In some embodiments, dynamic transmission scheduling can be used in response to adding or removing transceivers from the system, as further described below. In some embodiments, the response of the positioning network (e.g., network 100) to adding or removing transceivers (e.g., due to a failure) can be used as a metric to evaluate the robustness of the network. Figure 1A
[0152] In some embodiments, the ability of the transceivers 110 to receive signals 104 from other transceivers enables the location calibration unit 180 of the transceivers to calculate distances between the transceivers 110. In some embodiments, this can be used to define a coordinate system and the location of the transceivers relative to the coordinate system. In some embodiments, the coordinate system can be defined manually. For example, an operator can select an origin, a positive x-axis direction, and a positive y-axis direction for visualization of known relative locations of the transceivers network. In some embodiments, the coordinate system can be defined based on the locations of the transceivers. For example, a first transceiver can define the origin, a second transceiver define the direction of the positive x-axis, and a third transceiver define the positive y direction. In some embodiments, the coordinate system can be defined by inputting the (x, y, z) locations of the transceivers for storage in memory. In some embodiments, the accuracy with which the transceivers network calculates distances between anchors can be used as a measure to assess network performance.
[0153] In some embodiments, the signals 104 can be the same signals used by the self-locating devices (e.g., signals 102). In some embodiments, the signals 104 can not be the same as the signals 102 in some respects. For example, the signals 102 and 104 can have different payloads. In some embodiments, the signals 104 can be transmitted at a different time than the signals 102. For example, the signals 104 can be transmitted during installation or during a calibration phase of the positioning system, and the signals 102 can be transmitted while the system is in operation. The signals 104 and 102 can also not be the same in additional respects (e.g., their signal strength, preamble, etc.). In some embodiments, the use of the signals 102 and 104 can be different. For example, the transceivers can transmit the signals 102 at a different update rate than the update rate used for the signals 104, or the signal transmission can follow a different schedule.
[0154] Figure 3 and 4 are system architectures that allow transceivers to synchronize the transmission of UWB signals 102 by the transceivers, in accordance with some embodiments of the present disclosure. Figure 3 and 4 The system architectures of Figure 1A may be used, for example, in the system 100 of
[0155] Figure 3 shows transceivers 110 that use a single shared clock 300 and are each equipped with their own scheduling unit 150. Alternatively, the transceivers 110 can be configured to share a single clock 300 and a single scheduling unit 150 (not shown). This can be achieved by connecting the single clock and scheduling unit to the digital transmit electronics of each transceiver.
[0156] Figure 4Different topologies are shown, in which each transceiver 110 uses its own clock 300 and scheduling unit 150. Here, the external synchronization signal 304 received by the synchronization unit 174 of each transceiver is used to synchronize the transmission time of the UWB signal of the transceiver.
[0157] The scheduling unit 150 determines the time at which the UWB signal is transmitted by the digital transmission electronics 118, the analog transmission electronics 116 and the antenna 112. The purpose of the scheduling unit 150 is to schedule the signal transmission such that collisions between signals from different stationary transceivers 110 are avoided as much as possible. To this end, the scheduling unit 150 can exchange information with the synchronization unit 174. This information is typically two-fold: first, the scheduling unit 150 can report to the synchronization unit 174 when a message is transmitted. Second, the scheduling unit 150 can rely on information from the synchronization unit 174 about the synchronization reference time. In addition, the scheduling unit 150 can be operatively connected to a memory (e.g. the memory 170 described in Figure 1B The scheduling unit 150 can implement as an example a random access (RA) scheme in which the transmission time is randomly chosen from a fixed distribution, and a time division multiple access (TDMA) scheme in which individual transceivers are assigned a specific transmission time. In schemes in which the transmission time depends on signals from other transceivers, the scheduling unit 150 will typically also be connected to digital reception electronics (e.g. the digital reception electronics 164 described in Figure 1B
[0158] In some embodiments, a fully distributed topology is used in which each transceiver contains a clock, a synchronization unit and a scheduling unit. In some embodiments, other topologies are used. In some embodiments, a centralized topology is used. For example, Figure 3 The topology shown describes several transceivers that share a single clock 300. In this configuration, the system can operate without a synchronization unit. Since the transceivers share the same single clock, they can be physically synchronized, e.g. by ensuring that the cable length to each transceiver is the same or by setting the clock rate of the transceivers to be the same. Similarly, when each transceiver includes a clock, clock synchronization can also be achieved by coupling the synchronization units 174 to a central synchronization signal 304 that provides a synchronization reference, such as a low frequency pulse signal, to all synchronization units, as described in Figure 4 As shown. Furthermore, the individual scheduling units of the transceiver can be replaced by a single central scheduling unit that centrally determines the transmission times for several anchors, as described above. In some topologies, the transceiver may not include receiving electronics because it does not need to transmit information from other transceivers.
[0159] In some embodiments, transceiver 110 may be connected in various wired or wireless communication topologies (mesh, peer-to-peer, etc.) known in the art. In some embodiments, transceivers may transmit information related to the operation of the system, such as location, clock rate, clock skew, signal waveform, signal strength, synchronization or calibration messages, to each other or to the receiving device.
[0160] Figure 5 This is a block diagram illustrating a schematic self-localization device 130 according to some embodiments of the present disclosure. The self-localization device 130 includes an antenna 132 for receiving a UWB signal 102. The antenna 132 is operatively coupled to an analog receiving electronics 136 capable of amplifying the signal. The signal can then be time-stamped using a digital receiving electronics 148 with reference to a clock 300. A positioning unit 174 can compare input from the clock 300 with input from other clocks (e.g., a message received as a synchronization signal or from another part of a synchronization system and received by the digital receiving electronics 148). The synchronization unit 174 can use this information to calculate clock corrections for clock rate or clock skew, which can then be transmitted to the positioning unit 152 or the compensation unit 500 or stored in a memory 171. Furthermore, information from the compensation unit 500 can also be used.
[0161] Figure 6 This is a schematic timing diagram illustrating the propagation of a received UWB signal through an antenna 132, analog receiving electronics 136, and digital receiving electronics 148 of a self-localization device, according to some embodiments of this disclosure. The interconnection of these components will be referred to as the receiving conduit. Each of these components introduces a delay in the propagation of the received signal. Time is shown on the vertical axis, where the markers are... A t is used to indicate time, which is measured with reference to the clock of self-positioning device A.
[0162] Considering time A t0 Rx The signal 602 reaches the antenna 132 of the self-positioning system, which propagates through the receiving tube, and arrives in time. A t0 606 is time-stamped by the digital receiving electronics 148. The delay introduced by this conduit (by...) A t0 606 and A t0 RxThe difference between 602 and 604 is denoted as A δ0 604, and is referred to as the pipe delay. Now consider that at time A t1 Rx 612 the second signal arrives at the antenna 132 of the self-localization device, after a pipe delay of A δ1614 through the receiving pipe. The time A t1 616 is time-stamped. The change in the pipe delay between the two signals is denoted as A δ1- A δ0|. Note that this measurement is with respect to the clock of the self-localization device 130, and is therefore independent of clock rate drift.
[0163] In some embodiments, the difference between the pipe delays 604 and 614 is less than 0.01, 0.6, 3, or 15 nanoseconds, which allows for more accurate localization.
[0164] The change in the pipe delay is affected by physical, measurable factors, including the frequency response of the antenna 132 of the self-localization device, internal amplification, and the accuracy and variation in the production of time stamps by the digital receiving electronics 148. Since the antenna is a non-ideal electromagnetic device, the frequency response of the antenna is described by an amplitude response related to the angle of reception corresponding to how much the radio signal is amplified or attenuated by the antenna, and a phase response related to the angle of reception corresponding to how much the radio signal is delayed by the antenna. These responses are deterministic functions of the angle of the received signal, and result in an electronic delay of the signal as it passes through the antenna 132. In some embodiments, the propagation of the signal through the analog receiving electronics 136 and the digital receiving electronics 148 can be further delayed by the internal amplification of the signal in order to obtain a consistent signal level regardless of the received signal strength. Furthermore, the ability of the digital receiving electronics 148 to consistently and accurately time-stamp the arrival of UWB signals requires that the digital receiving electronics 148 consistently and accurately identify the "first path" of the signal. Errors in this identification, which are discussed further below and shown in FIG. 6B, result in non-constant errors in the time-stamping process, thereby resulting in a perceived delay in the propagation time of the signal through the receiving pipe. In addition to the systematic pipe delay, in some embodiments, random, external, or un-modeled processes can also affect the pipe delay, introducing non-systematic delays in the receiving pipe. In some embodiments, temperature is an example of such a process, whereby changes in temperature can affect the processing time required by the digital receiving electronics 148. Figure 7A
[0165] The effect of non-constant pipes is the introduction of non-constant errors in the reception time of any UWB signal 102. Therefore, it is apparent to those skilled in the art that, Figure 6 The illustrated non-constant pipe delay can correspond to a non-constant error in any time of arrival or time of arrival range measurement derived from the time of reception of any UWB signal 102. In some embodiments, the compensation unit 500 can compensate for this systematic but non-constant error as illustrated in Figure 9A and 9B as illustrated in and discussed below.
[0166] Figure 7A An illustration of a channel impulse response (CIR) of a channel through which a UWB signal 102 is received is shown, where signal power E is plotted against signal time delay t. A channel (sometimes referred to as a transmission channel) is a combination of a particular frequency and bandwidth. For a UWB signal 102, the frequency is typically a center frequency or carrier frequency. In the upper plot of Figure 7A , the channel impulse response 700 is well defined and narrow in width. In addition, the noise floor 702, which is a characteristic of the transmission channel, is low compared to the peak of the channel impulse response 700. These characteristics allow the digital receive electronics (e.g., digital receive electronics 148, 164) to accurately and precisely detect the first path.
[0167] In the lower plot of Figure 7A , the channel impulse response 700 is "wide" and not well defined. In addition, the channel impulse response 700 is not as distinct from the noise floor 702. These characteristics reduce the accuracy of the time stamping process performed by the digital receive electronics (e.g., digital receive electronics 148, 164). Such a channel impulse response is typical for a UWB signal that has passed through an obstacle or has been subjected to a disturbance. Examples of obstacles include any medium that absorbs the signal, distorts the signal, scatters or refracts the signal. Examples of disturbances include any other signal that interferes with the UWB signal. In some embodiments, the compensation unit (e.g., compensation unit 500) can partially or completely compensate for the obstacle or disturbance due to the characteristics of the received signal.
[0168] The ability of the digital receive electronics (e.g., digital receive electronics 148, 164) to consistently and accurately time stamp a UWB signal requires that the digital receive electronics consistently and accurately identify the time at which the "first path" of the received signal occurs. A number of algorithms are known for this purpose, such as "Leading Edge Detection" or "Search-Back."
[0169] In some embodiments, the accuracy of the identification of the "first path" and, thus, the accuracy of the time stamping process can depend on the strength of the signal received at the antenna (e.g., antenna 112, 132). The accuracy of the time stamping can be affected by the ratio between the signal strength and the level of the noise floor 702 (sometimes referred to as the signal-to-noise ratio). A lower signal-to-noise ratio can result in less defined peaks in the channel impulse response 700. In some cases, the received time stamp can be affected by a geometric walk error, whereby the time stamp of a weaker signal is delayed compared to the time stamp of a stronger signal. In addition, the accuracy of the time stamping can depend on the shape of the channel impulse response of the received signal.
[0170] Figure 7B An illustrative structure of a UWB signal 102 is shown in accordance with some embodiments of the disclosure. In some embodiments, the structure of the UWB signal 102 is similar to the structure defined in IEEE Standard 802.15.4. The same standard describes other aspects of UWB systems, such as the signal transmission process. The transmission of the UWB signal 102 begins at time t start 722 with the transmission of a preamble sequence 710. The sequence is typically predefined and known to the transmitter (e.g., transceiver 110) and receiver (e.g., self-locating device 130) of the UWB signal 102. In some embodiments, the preamble sequence 710 can be stored in memory. In some embodiments, the preamble sequence 710 can be configured during system operation. In some embodiments, the preamble sequence 710 can be encoded by interconnections of digital or analog electronic components.
[0171] In some embodiments, the preamble 710 defines a sequence in which UWB radio pulses are transmitted at a specific rate over a specific transmission channel. The rate can sometimes be referred to as the pulse repetition frequency. The pulse repetition frequency is typically known to both the transmitter and receiver of the UWB signal 102. In some embodiments, the pulse repetition frequency can be stored in memory. In some embodiments, the pulse repetition frequency can be configured during system operation. In some embodiments, the pulse repetition frequency can be encoded by interconnections of digital or analog components.
[0172] In some embodiments, the channel or preamble 710 or pulse repetition frequency is appropriately selected such that the receiver is able to receive UWB signals 102 from a particular subset of transmitters. In some embodiments, the channel or preamble 710 or pulse repetition frequency is appropriately selected such that the transmitter is able to transmit UWB signals 102 to a particular subset of receivers. In some embodiments, the channel or preamble 710 or pulse repetition frequency is appropriately selected such that multiple UWB signals 102 can be transmitted simultaneously with reduced or no interference.
[0173] After transmitting the preamble 710, the transmitter transmits a frame start delimiter 712 to indicate the start of the data portion of the UWB signal. After transmission of the frame start delimiter 712, the transmitter transmits a physical layer header (PHR) 714, which contains information related to the encoding of the payload 716 of the UWB signal (e.g., data rate). After transmission of the physical header 714, the payload 716 of the UWB signal is transmitted. In some embodiments, the payload is empty. In some embodiments, the payload 716 contains information from the position calibration unit 180. In some embodiments, the payload 716 contains information to facilitate synchronization by a synchronization unit (e.g., the synchronization unit 174). In some embodiments, the payload 716 contains information to enable scheduling of future transmissions by a scheduling unit (e.g., the scheduling unit 150). In some embodiments, the payload 716 contains information related to previously transmitted or received UWB signals (e.g., UWB signals 102 or 104). In some embodiments, the payload 716 contains other information. In some embodiments, the payload 716 can contain multiple pieces of information. In some embodiments, the payload 716 contains error detection information, which can be used to assess the integrity of the received payload 716. Transmission of the UWB signal 102 ends at time t end 724 after transmission of the payload 716.
[0174] By detecting and receiving the preamble 710 of the UWB signal, the receiver is able to detect the transmission of the start-of-frame delimiter (SFD) 712. In some embodiments, the time of detection of the start-of-frame delimiter 712 is marked by the receiver's digital receiving electronics (e.g., digital receiving unit 148). After detecting the start-of-frame delimiter 712, the receiver is able to detect the physical header 714. The information encoded in the physical header 714 can be used by the receiver to decode the information encoded in the payload 716 of the UWB signal.
[0175] In some embodiments, payload 716 can be used to check for errors. In some embodiments, payload 716 can be used within other units of the receiver. In some embodiments, payload 716 can be used to calculate time difference. In some embodiments, payload 716 can be used to calculate distance. In some embodiments, payload 716 can be compared with measurements from a global characteristic sensor (e.g., global characteristic sensor 158) of the receiver. In some embodiments, payload 716 can be stored in memory (e.g., memory 170, 171).
[0176] It will be apparent to those skilled in the art that, although this embodiment discloses a specific signal structure similar to the signal structure defined in IEEE standard 802.15.4, many other signal structures are equally valid and can be used by this disclosure.
[0177] Figure 8 This is a block diagram of an illustrative positioning unit 152 including location update processing, according to some embodiments of the present disclosure. Figure 8 The localization algorithm described herein employs an extended Kalman filter (EKF). Localization unit 152 can be used with any suitable device 130 disclosed herein. At the beginning of the loop, localization unit 152 performs a processing update step 820, wherein this step uses the previously estimated state of the device and, if available, instructions from control unit 840 sent to one or more actuators (e.g., Figure 10 The data is from the signal of the actuator 1004. The result of this step is a priori estimate 822 (e.g., an estimate of the current state of device 130 without considering any newly acquired measurements). This priori estimate is then fused with the available measurements. The priori estimate, measurements, and other data used by the positioning unit 152 can be temporarily stored in memory ( Figure 8 (Not shown in the text)
[0178] The first type of measurement is the reception of a UWB signal 102. In this case, the time stamp of the received signal 800 is first processed by clock correction 802 (using data from the synchronization unit 174) and impact compensation 804 (using data from the compensation unit 500). The resulting corrected time of arrival 806 represents an estimate of when the UWB signal arrived at the antenna 132 of the device, which can then be fused with the prior estimate in the EKF measurement update step.
[0179] As mentioned above, the resulting corrected time of arrival 806 represents an estimate of when the UWB signal 102 arrived at the antenna 132 of the device. In some embodiments, the transmission information is included in the payload of the received UWB signal, which indicates when the signal was transmitted and by which transceiver 110. The transmission information, together with the corrected time of arrival, is a measurement of the distance between the device 130 and the transceiver 110. In the positioning unit 152, the corrected time of arrival and the transmission information are then fused with the prior estimate in the EKF measurement update step 824.
[0180] The second type of measurement, if new data is available, is data representing a local measurement of a global property (e.g., from the global property sensor 158). This data is then compared to data representing remote measurement(s) of that global property (provided by the digital reception electronics 148), and the global property model 814 provides information about how this comparison relates to the position, orientation, or motion of the device 130. This information can then be fused into the state estimate of the EKF measurement update step 824. An example of a global property is the signal strength of a wireless signal. The free space path loss of a radio frequency signal of frequency f transmitted a distance d is:
[0181] FSPL (dB) = 20 log10(d) + 20 log10(f) + K
[0182] where K is a constant depending on the units used for d and f. With this formula, the distance of a self-localizing device to a source of a wireless signal can be related to the distance of the transceiver(s) 110 to the same source.
[0183] The third type of measurement, if new data is available, comes from sensors such as the sensors 154, 155. This measurement can be fused into the state estimate in the EKF measurement update step 824.
[0184] The estimation of the local clock behavior by the synchronization unit 174 and the estimation of the compensation values by the compensation unit (not shown) can depend on the estimated position computed by the positioning unit 152. This dependency can be resolved by first computing the clock behavior and compensation values using a priori position estimates and then computing new a posteriori position estimates. This dependency can also be resolved by estimating the clock behavior or clock correction, compensation values and position in parallel or iteratively by alternating between 1) a new clock behavior or clock correction computation and compensation value computation using the current position estimate and 2) a position estimate using the current clock and compensation values until the computed values substantially converge.
[0185] Figure 9A and 9B Illustrative phenomena affecting the accuracy of UWB range measurements are shown. In some embodiments, these phenomena are partially or fully compensated by the compensation unit (e.g., compensation unit 500).
[0186] Figure 9A Compensation for varying reception angles 900 is illustrated. Because physical antennas are non-ideal electromagnetic devices, their frequency response is affected by both the antenna gain (i.e., how much the radio signal is amplified or attenuated) and the antenna phase response (i.e., how much the radio signal is delayed). This frequency response varies with the angle 900 at which the radio signal is received. Thus, a UWB signal received at angle θo 900a will be amplified and delayed differently than a UWB signal received at angle θi 900b.
[0187] This is illustrated in Figure 9A , where two stationary transceivers 110a, 110b and a self-localizing device 130 within an environment are shown. The UWB signal 102 from transceiver 0 110a arrives at the self-localizing device 130 at angle θo 900a, while the signal 102 from transceiver 1 110b arrives at the self-localizing device 130 at angle θi 900b. As described above, the frequency response of the antenna is a function of the reception angle 900 and thus results in the signal from transceiver 0 110a having a different delay than the signal from transceiver 1 110b. This varying signal delay causes a varying delay in the signal time stamp and an error in the estimated distance to each transceiver. These delays are deterministic as a function of the reception angle. In some embodiments, the effect of the reception angle on the estimated distance can be reduced or removed with a compensation unit.
[0188] In Figure 9AAn illustrative compensation is shown in plot 1, which shows the receive angle Θ 900 on the x-axis and the delay δ 902 on the y-axis. This mapping allows the signal delay to be calculated based on the known receive angle Θ, and thus compensated for by using a compensation unit (e.g., compensation unit 500) to subtract the effect of this signal delay from the generated receive time stamp. In some embodiments, this function is a mathematical expression that allows the delay δ to be calculated for any receive angle Θ. In some embodiments, this compensation can be calculated by a look-up table, where known values of receive angle Θ and delay δ are stored in a data structure (e.g., using memory 171), and interpolation is used to estimate the delay δ for any receive angle Θ (e.g., using compensation unit 500).
[0189] In some embodiments, the effect of the frequency response of the antenna can be observed by placing a self-localization device 130 in an environment covered by stationary transceivers 110, and then rotating the self-localization device around the origin of its body coordinate system, and observing the change in the estimated distance to each stationary transceiver 110. These observations can be measured by the device 130 and used to compensate for signal delays.
[0190] FIG. 9 illustrates other effects that can affect the accuracy of the estimated distance. Three stationary transceivers 110 and a self-localization device 130 are located within an environment. A signal 102 from transceiver 0 110a arrives at the self-localization device 130 at an angle Θ0 900a with a traveled distance R0 904a, while a signal 102 from transceiver 1 110b arrives at the self-localization device 130 at an angle Θ1 900b with a traveled distance R1 904b. Here, in addition to the delay due to the relative orientation as shown, the strength of each signal 102 is inversely proportional to the square of the distance traveled. Figure 9A In some embodiments, the effect of the frequency response of the antenna can be observed by placing a self-localization device 130 in an environment covered by stationary transceivers 110, and then rotating the self-localization device around the origin of its body coordinate system, and observing the change in the estimated distance to each stationary transceiver 110. These observations can be measured by the device 130 and used to compensate for signal delays. Figure 9B In some embodiments, the effect of the frequency response of the antenna can be observed by placing a self-localization device 130 in an environment covered by stationary transceivers 110, and then rotating the self-localization device around the origin of its body coordinate system, and observing the change in the estimated distance to each stationary transceiver 110. These observations can be measured by the device 130 and used to compensate for signal delays.
[0191] In some embodiments, a compensation unit (e.g., compensation unit 500) can compensate for the effects of the frequency response of the antenna as in Figure 9Bthose delays shown in plot 2, which shows distance R 904 on the x-axis and delay δ 906 on the y-axis. This mapping allows the signal delay to be calculated based on the known distance R, and thus compensated for by subtracting the effect of this delay from the generated reception time stamp. In some embodiments, this function is a mathematical expression that allows the delay δ to be calculated by the compensation unit for any distance R. In some embodiments, this compensation can be calculated by way of a lookup table, where known values of distance R and delay δ are stored in a data structure (e.g., using memory 171), and interpolation is used to estimate the delay δ for any distance R (e.g., using compensation unit 500).
[0192] In embodiments where the received signal strength can be measured by the self-locating device, this mapping can be replaced by a mapping from the received signal strength (which is inversely proportional to distance, and related to the antenna gain at reception angle θ) to the delay δ. For example, the mapping can be stored in a memory (e.g., memory 171). In some embodiments, this compensation mapping can also take into account delays introduced due to the antenna phase response at reception angle θ.
[0193] In addition to illustrating the delay due to increased distance R, Figure 9B Also shown is transceiver 2 110c, which is placed such that the signal 102 from transceiver 2 110c must propagate through some obstacles before reaching the self-locating device 130. Propagation through these obstacles introduces a deterministic delay to the signal 102 based on the width w2 908c of the obstacles. This is due to the fact that the speed of light (and thus the speed of UWB signal 102) varies depending on the medium through which the signal propagates. In addition, depending on the construction of the obstacles (e.g., the material from which they are made), the obstacles can reduce the strength of the signal 102 received by the self-locating device 130, or distort the received waveform. In some embodiments, the compensation unit 500 is able to compensate for these effects, e.g., by using prior knowledge of the environment, by interpreting features of the received signal 102, including signal strength, noise floor, or CIR shape (see, e.g., FIG. 7), etc.
[0194] For example, consider the case where the signal 102 is transmitted by transceiver 2 110c and travels through a solid glass window of thickness w2 = 1 cm before being received by the antenna 132 of the self-locating device 130. Due to the density of the glass, the speed of light in the glass is approximately 33% slower than in air, and thus the signal 102 travels more slowly through the glass, resulting in a slightly delayed arrival at the antenna 132 of the self-locating device 130. This delay in arrival translates into an error in the distance estimate. In the previous example, for every 1 cm of glass, a distance error of ~5 mm occurs.
[0195] In some embodiments, the compensation unit (e.g., compensation unit 500) compensates for deterministic distance errors, such as those illustrated in Figure 9A and 9B .
[0196] Figure 10 is a block diagram of an illustrative self-localization device that can be actuated according to some embodiments of the present disclosure. In some embodiments, the apparatus 130 can be integrated with a mobile robot (e.g., mobile robot 1100 of Figure 11 ). Various system components can be used with the apparatus 130 of Figure 10 , including the localization unit 150, the compensation unit 500, the scheduling unit 150, the synchronization unit 174, the receiving electronic components 136, 148, the transmitting electronic components 116, 118, and the control unit 840. In addition, other system components such as a data transceiver or data access point can also be used (see FIG. 15). The control unit 840 computes actuator commands (e.g., for a mobile robot, see Figure 11 ). It can implement various controllers (see Figure 12 ).
[0197] Figure 11 is illustrated a mobile robot 1100 including a self-localization device 130 according to some embodiments of the present disclosure. The mobile robot 1100 can also include one or more sensors (e.g., MEMS sensors and sensors 155). In some embodiments, the mobile robot 1100 includes an accelerometer 1106 and a gyroscope 1104. In some embodiments, the mobile robot 1100 additionally includes one or more magnetometers, barometers, GPS receivers, and proprioceptive sensors (e.g., sensors that monitor battery level and motor current). The mobile robot 1100 as illustrated also includes actuators 1004 (e.g., four motors) for rotating four propellers 1110 that allow the mobile robot to hover in the air and control its movement through space. In some embodiments, the actuators 1004 are powered by a battery. In some embodiments, the transceiver or apparatus is powered by a battery.
[0198] Figure 11 The self-localization device 130 of Figure 11 may be integrated with the electronic components of the mobile robot 1100. For example, the apparatus 130 can have access to the sensors of the mobile robot 1100 (e.g., sensors 155, accelerometer 1106, and gyroscope 1104). This can be useful or convenient, for example, for implementing some sort of weight distribution on the flying robot to allow for better antenna reception or collocating related electronic components.
[0199] Depending on the application, the flight electronics can be more complex than the embodiments described herein and can for example comprise multiple electronic processing units, multiple antennas or multiple self-localization devices.
[0200] Figure 12 is a block diagram of an exemplary control unit 840 that can be used with a mobile robot 1100 such as Figure 11 The control unit 840 uses a cascade of controllers (horizontal position controller 1202, vertical position controller 1210, reduced attitude controller 1220, yaw controller 1230, and body rate controller 1242, with reference signals / feedback signals omitted for clarity purposes).
[0201] The control scheme depicted in the control unit 840 is used to follow a desired carrier position and yaw trajectory. The on-board control comprises four separate loops: horizontal 1202 and vertical position control 1210 loops, reduced attitude control 1220 loop, and yaw control 1230 loop. It will be understood that the reference numerals of the controllers within the control unit 840 are also used to refer to the control loops associated with the controllers. The output of the four control loops are three body rate commands to the flight mobile robot 1100 shown in Figure 12 Figure 11
[0202] Figure 12 The control strategy shown in is based on a cascade loop shaping design strategy. The controller design is thus split into the design of several controllers of low-level dynamic systems. The vertical control loop 1210 is shaped such that it responds to a height error of a second order system with for example common thrust c. Similar to the vertical control loop 1210, the two horizontal control loops 1202 are shaped to behave like second order systems. However, no control input is directly calculated, but instead the commanded accelerations a(x) and a(y) are given as set points to the attitude controller 1220. The attitude controller 1220 controls the reduced attitude of the mobile robot such that the commanded accelerations a(x) and a(y) are satisfied. The commanded accelerations are then converted into commanded rotation matrix entries. Using the rotational kinematics of the mobile robot, the rate of change of the matrix entries can be used to calculate the desired carrier body rates p and q. The above controllers completely define the translational behavior of the mobile robot. The yaw controller 1230 can then be implemented as a proportional controller from the measured yaw angle (for example, as measured by a sensor 155 on the mobile robot 1100).
[0203] Figure 13A An illustrative system for an autonomous flying robot 1100 is shown in accordance with some embodiments of the present disclosure. The autonomous flying robot 1100 receives UWB signals 102a-d transmitted by four UWB transceivers 110 placed in its vicinity. The flying robot 1100 is equipped with a self-localization device (not shown for clarity) rigidly attached to the robot's base.
[0204] Figure 13B An illustrative plot of transmission times and reception times of UWB packets of UWB signals 102 transmitted by the four transceivers 110 and received by the mobile robot is shown. In some embodiments, Figure 13B the plot corresponds to Figure 13A the transmission times and reception times of the UWB signals depicted in In some embodiments, the transceivers 110 autonomously determine a schedule according to which the UWB signals 102 are transmitted. In some embodiments, the transmission schedule is predetermined. In some embodiments, the transmission schedule is updated during operation. In some embodiments, a TDMA technique is used to generate the transmission schedule, as further discussed below with reference to FIG. 14.
[0205] In the illustrative plot of Figure 13B at time Tl a first UWB packet 102a leaves the antenna of a first transceiver 110. Subsequent UWB packets 102b, 102c and 102d of the other three transceivers 110 leave their respective transceivers' antennas at times T2, T3 and T4, respectively. In this scheme, the transceivers transmit packets in a round-robin fashion and at regular intervals 1310:
[0206] T2-Tl = T3-T2 = T4-T3.
[0207] The four transmitted UWB packets 102a, 102b, 102c and 102d are received at reception times Rl, R2, R3 and R4 at the antenna of the self-localization device connected to the mobile robot 1100. Based on these measured reception times, the self-localization device computes the following arrival time differences 1300a, 1300b, 1300c:
[0208] R2-Rl; R3-R2; R4-R3.
[0209] In this scheme, the self-localization device can compute its position relative to the transceivers. This is achieved by accurately measuring the arrival time differences 1300a, 1300b, 1300c, by converting these time differences to distances using the estimated speed of the signals 102 and by using multilateration to compute the robot's position relative to the known positions of the transceivers.
[0210] Figure 14AA schematic transceiver network comprising multiple transceivers 110 is shown according to some embodiments of the present disclosure. By allowing simultaneous use of a large number of transceivers, such a transceiver network can allow for the use of self-localizing devices 130 in a vast geographical area. As Figure 14A As shown in the middle, in case the transmission ranges 1400 of two transceivers overlap, these transceivers will be referred to as "interfering", as simultaneous transmission of UWB signals 102 by two transceivers can cause interference of the UWB signals 102. To avoid signal interference, the signal transmission of transceivers in a certain area is typically coordinated. In some embodiments, this can be achieved by ensuring sufficient separation of the signals in time (e.g. by sufficient time between two signal transmissions, e.g. using a scheduling unit), in space (e.g. by sufficient geographical separation of the transceivers), or in frequency (e.g. by sufficient separation of the transmission carrier frequencies of the UWB signals).
[0211] The amount of time required for sufficient signal separation in time can depend on many factors (e.g. signal strength, size of signal packets, pulse / peak shape of the signals, antennas of the transceivers, antennas of the receivers, geographical location of the transceivers (including their geographical separation), obstacles, background noise, etc.). Ensuring signal separation in time can mean that the duration between subsequent signals from any particular transceiver increases with the number of transceivers. This is particularly problematic for dynamic autonomous mobile robots, where even a relatively small reduction of the update rate can cause a significant deterioration of the localization performance. A known method to ensure time separation is time-division multiple access (TDMA). In embodiments where occasional signal interference is acceptable and signal timing is not important, an Aloha approach can also be utilized.
[0212] Sufficient separation in space, which is related to the transmission range of each transceiver, can depend on many factors (e.g. signal strength, signal frequency, signal bandwidth, pulse / peak shape of the signals, antennas of the transceivers, antennas of the receivers, geographical location of the transceivers (including their geographical separation), obstacles, background noise, etc.). In some embodiments, a typical spatial separation is 1 to 100 meters. In some embodiments, a typical spatial separation is 10 to 500 meters. In some embodiments, a typical spatial separation is 200 to 2000 meters. In some embodiments, a typical spatial separation is in the order of kilometers. In some embodiments, two transceivers can be co-located. In some embodiments, a combination of multiple spatial separations is used. In some embodiments, the spatial separation is determined by the transmission range of the transceivers. Figure 14AIn some embodiments, the transceivers 110 are arranged so that coverage of a desired operating area is optimized with respect to some metric. In some embodiments, operation of the transceivers 110 is optimized with respect to some metric. Suitable metrics include the number of transceivers in range, signal strength, update rate from a particular combination of transceivers, multipath effects, or other metrics, including combined metrics. The transceiver arrangement can include the location of the transceivers, the antenna orientation of the transceivers, the operating frequency of the transceivers, the bandwidth of the transceivers, or other factors. The operating area can be a geographic area, a flight volume of the flying robot 1100, a predefined operating volume, or other area. Optimization can involve physical parameters (e.g., geographic placement of transceivers, antenna orientation, etc.) or operational parameters (e.g., operation of the scheduling unit 150).
[0213] Further assistance in achieving adequate spacing in space can be achieved by selecting appropriate antennas. Some embodiments use directional antennas. Some embodiments use omnidirectional antennas. In some embodiments, directional antennas are used to help ensure spatial separation of UWB signals. In some embodiments, by using directional antennas to direct the transmissions of the transceivers 110, it is possible to more precisely control which transceivers 110 transmit to which areas in the defined space, and thereby more precisely control the spatial separation of the UWB signals 102. In some embodiments, by using directional antennas to direct the transmissions of the transceivers 110, it is possible to achieve longer transmission distances in desired directions. Other methods that can assist in spatial separation include shielding, placement (e.g., away from noise sources), optimizing radiation patterns, and combinations of the above. In some embodiments, by equipping the self-localization device 130 with directional antennas, it is possible to estimate orientation information based on which signals will be received and compared to known locations of the transceivers 110.
[0214] In some embodiments, the transceivers 110 are arranged so that coverage of a desired operating area is optimized with respect to some metric. In some embodiments, operation of the transceivers 110 is optimized with respect to some metric. Suitable metrics include the number of transceivers in range, signal strength, update rate from a particular combination of transceivers, multipath effects, or other metrics, including combined metrics. The transceiver arrangement can include the location of the transceivers, the antenna orientation of the transceivers, the operating frequency of the transceivers, the bandwidth of the transceivers, or other factors. The operating area can be a geographic area, a flight volume of the flying robot 1100, a predefined operating volume, or other area. Optimization can involve physical parameters (e.g., geographic placement of transceivers, antenna orientation, etc.) or operational parameters (e.g., operation of the scheduling unit 150).
[0215] The sufficient spacing in transmission frequency can depend on many factors (e.g., signal strength, signal frequency, signal bandwidth, signal pulse / peak shape, transceiver antennas, receiver antennas, geographic location of transceivers (including their geographic spacing), obstacles, background noise, etc.). In some embodiments, the spacing is in the range of 1-50 MHz. In some embodiments, the spacing is in the range of 100-500 MHz. In some embodiments, the spacing is in the range of 200-1000 MHz. In some embodiments, overlapping transmission frequencies are used. When designing for frequency spacing of signals, it can be important to consider that the self-localization device 130 can need to change its reception frequency to receive UWB signals 102 that are spaced in frequency. A known method to ensure frequency spacing is frequency division multiple access (FDMA). In some embodiments, a combination of various frequency spacings is used.
[0216] In some embodiments, TDMA can be used to ensure time spacing of UWB signals 102. In some embodiments, if the transceiver network includes N transceivers, then N time slots are allocated (one time slot per transceiver 110), whereby a simple approach can be taken. The time to cycle through all time slots is sometimes referred to as the TDOA cycle time. This allocation of N time slots to N transceivers is optimal in the case where all transceivers in the network are interfering. However, in the case where not all transceivers are interfering, as shown in FIG. 1 IB, a more optimal TDMA allocation is possible, which uses fewer than N time slots, and thus reduces the TDOA cycle time and increases the average rate at which the self-localization device 130 receives UWB signals. Figure 14A
[0217] Figure 14B A schematic simplified transceiver network according to some embodiments of the present disclosure is shown. In Figure 14B transceivers 110a and 110e are not interfering. It will be clear to those skilled in the art that in this case, both transceivers 110a and 110e can utilize the same TDMA time slot, since the self-localization device cannot receive signals from both transceivers at the same time (because of the spatial spacing of the two transceivers) and thus simultaneous transmissions do not interfere. In Figure 14B This is shown in FIG. 11C by transceivers 110a and 110e having the same shading.
[0218] In some embodiments, scheduling unit 150 can coordinate the scheduling of TDMA time slots. In some embodiments, synchronization of multiple transceivers 110 can be achieved through synchronization unit 174 or by transceivers 110 sharing a common clock 300 to achieve consistent time scheduling. In some embodiments, time slot allocation can be manually determined or programmed into the transceiver's memory (e.g., memory 170). In some embodiments, time slot scheduling can be performed autonomously by scheduling unit 150.
[0219] In order to autonomously select time slots, the transceiver can first (e.g.) Figure 14B As shown, a graph of adjacent transceivers is constructed via connecting edges 1410. In some embodiments, this can be achieved by transceiver 110 sharing its connectivity information as the payload 716 of the UWB signal 104. In some embodiments, this connectivity information can be pre-programmed. Once the graph of the network is constructed, the problem of autonomous time slot allocation is simplified to a distributed graph coloring problem—for which many known algorithmic solutions exist. An example solution to this graph coloring problem is shown in Figure 14B In the image, different backgrounds are used to depict the transceivers 110, thereby indicating the time slots in which these transceivers 110 transmit.
[0220] In some embodiments, the graph construction and time slot allocation processes may occur periodically, or may be triggered by transceiver 110 by sending an appropriate UWB signal 104. In some embodiments, the signal 104 is sent in response to an event. In some embodiments, additional TDMA time slots are allocated for the transmission of any UWB signal 104. In some embodiments, the use of the TDMA is coordinated via ALOHA. In some embodiments, transceiver 110 uses the TDMA time slot to alert other transceivers 110 of the occurrence of an event. In some embodiments, the time slot is used by transceiver 110 to trigger the reallocation of TDMA time slots.
[0221] In some embodiments, periodic or triggered reallocation allows the network to adjust the allocation of TDMA time slots to compensate for transceivers joining or leaving the transceiver network. In some embodiments, adding a transceiver 110 to the network can be achieved by leaving a TDMA time slot unallocated to allow new transceivers 110 to announce their joining the network and triggering a reallocation of the TDMA time slot. In some embodiments, removing a transceiver 110 from the network can be achieved by enabling the transceiver 110 to monitor for non-transmission and triggering a reallocation of the TDMA time slot if the transceiver 110 has not transmitted within a predetermined number of TDMA time slots.
[0222] In some embodiments, TDMA slot lengths of less than 0.1 milliseconds, 0.5 milliseconds, 1 millisecond, 2 milliseconds, 2.5 milliseconds, 5 milliseconds, 10 milliseconds, or 50 milliseconds are used.
[0223] In some embodiments, transceivers 110 can include their estimated position or timing information within the payload 716 of their UWB signals 102 or 104. In some embodiments, transceivers 110 can operate to receive these transmitted UWB signals 104. In some embodiments, a receiving transceiver 110 can include a synchronization unit 174 to synchronize the time schedule of the receiving transceiver with the time schedule of the transmitting transceiver based on the received timing or position information. In some embodiments, a receiving transceiver 110 can include a scheduling unit 150 to adjust the local transmission schedule based on the received timing or position information. In some embodiments, the scheduling unit 150 updates the network graph based on the received timing or position information. In some embodiments, the scheduling unit 150 causes the receiving transceiver 110 to trigger a TDOA reassignment based on the received timing or position information. In some embodiments, a receiving transceiver 110 can include a position refinement unit 180 to refine the position estimate of the receiving or transmitting transceiver 110 based on the received timing or position information. In some embodiments, refining the position estimate of a single transceiver 110 causes the coordinate system to be improved in case the coordinate system is estimated by the transceivers 110.
[0224] In some embodiments, transceivers 110 can be assigned more than one TDMA slot, allowing them to transmit more often within one TDMA cycle. In some embodiments, the assignment of multiple slots can be decided, for example, based on the Fisher Information added by the transceivers 110, a heuristic known to those skilled in the art that can be calculated based on the relative positions of the transceivers.
[0225] In some embodiments, Frequency Division Multiple Access (FDMA) is used to suppress transceiver interference, whereby interfering transceivers can be assigned different transmission frequencies so that they no longer interfere. In some embodiments, interfering transceivers can be assigned different preambles or pulse repetition frequencies to achieve a similar effect.
[0226] Figure 15Ais a block diagram of an illustrative positioning system using data access points 1510 according to some embodiments of the present disclosure. The positioning system further comprises three transceivers 110 and two self-localizing devices 130. In this illustrative system, each self-localizing device 130 comprises a data transceiver 1500. Each self-localizing device 130 receives UWB signals 102 from the transceivers 110. The transceivers 110 use UWB signals 104 to exchange data. The self-localizing devices 130 use a different type of second signal 1520 to exchange data with the data access points 1510. This is done using the data transceiver 1500 which is operatively coupled to the self-localizing device. The signal 1520 can for example use a different technology (e.g. 802.11 Wi-Fi, Bluetooth, etc.). As another example, the signal 1520 can use a different set of UWB signals (e.g. different frequencies, different preambles, different timing, etc.). The signal 1520 and the UWB signals 102 can be designed to not interfere with each other.
[0227] In Figure 15A each self-localizing device comprises an antenna 1505 for communicating with the data access points 1510. The antenna 1505 can be operatively coupled to the data transceiver 1500. Each transceiver 130 comprises an antenna 132 (omitted for clarity) for receiving signals from the transceivers 110.
[0228] Using different signal types for the transceivers' signals 102 and for the self-localizing devices' signals 1520 as Figure 15A illustrated can have technical advantages. For example, Figure 15A The architecture illustrated in Figure 15A The architecture illustrated in Figure 15A The architecture illustrated in
[0229] More generally, such segregation can allow for separate optimization of network properties (e.g., scalability, update rate, latency, bandwidth, transceiver placement, transceiver density, antenna design, antenna orientation, and many others) of the transceivers 110 and the data access points 1510 in order to meet the requirements of a specific use case. For example, the positioning data signals 102 can be provided in real-time, while the tracking signals 1520 can be transmitted at a much lower rate.
[0230] Figure 15B is a block diagram of an illustrative positioning system in which the self- positioning devices 130 are equipped with data transceivers 1500 according to some embodiments of the present disclosure. The positioning system also includes three transceivers 110. In some embodiments, Figure 15B The positioning system of
[0231] In Figure 15B The architecture shown in
[0232] The architecture shown in Figure 15B may also be implemented by having one of the self-positioning devices 130 act as a data access point 1510. This role can be statically assigned to a particular data transceiver 1500. This role can also be dynamically assigned to a data transceiver 1500, for example, depending on the location, connectivity, etc. of the data transceivers 1500.
[0233] Figure 15A and Figure 15BThe architecture shown in FIG. 13 can be used, for example, to implement behaviors controlled by, implemented by, or mediated by self-localization devices 130, by data transceivers 1500, or by data access points 1510. For example, a self-localization device 130 can control light according to its distance to another device 130. As another example, a self-localization device 130 can implement a mobile robot’s movement behavior that depends on another self-localization device (e.g., swarming, migration, clustering, flocking, camera tracking, etc.). As another example, two self-localization devices 130 can exchange data to cooperate (e.g., to synchronize their movements, to carry a payload, to coordinate camera coverage of an area, or to provide feedback about each other’s movements). As yet another example, a self-localization device can mediate or implement obstacle avoidance behavior in a mobile robot. As yet another example, two flying robots can each be equipped with a self-localization device that includes a data transceiver. In this example, each data transceiver can send data about the robots’ positions to a central server that includes a data access point 1510. The central server can then provide air traffic control services (e.g., services related to collision avoidance, services related to organizing traffic, services related to reserving flight paths). The central server can send data related to its services to a particular robot, or can broadcast the data, or can make the data available via a publisher-subscriber model. As another example, a self-localization device 130 equipped with a data transceiver 1500 can use a localization unit 152 to fuse data from UWB localization signals 102, local sensors 155, and global property sensors 156, 158; use a memory 171 to record data about its position; use a control unit 840 to monitor data for a trigger event; and, upon detecting the trigger event, use the data transceiver 1500 to send a message to a data access point 1510. This can allow, for example, a doctor in a hospital to receive an alert message and determine the location of a patient wearing a self-localization device who has fallen to the ground.
[0234] In some embodiments, Figure 15A and 15BThe architecture in FIG. 1 can be used with a cloud infrastructure. In some embodiments, each of the first and second flying robots is equipped with a self-localization device. Each self-localization device receives UWB signals 102 from a plurality of transceivers 110 located around the operating environment of the robot. Each self-localization device receives images from an on-board camera. Each self-localization device uses a data transceiver to send data related to the camera data (e.g., keyframes extracted from the camera feed) to a data access point. The data access point sends the data to a cloud robot infrastructure, which uses a central computing infrastructure (e.g., a data center) to process the data (e.g., to perform cloud-based collaborative mapping). The data access point sends the processed data (e.g., containing the location of the robots in the map) back to each robot, which uses its localization unit to improve its localization estimate by fusing the processed data with localization data from the UWB signals 102. The architecture allows the self-localization devices to perform tasks that require heavy computation (e.g., planning, probabilistic inference, map creation, loop closure (e.g., as part of an algorithm for simultaneous localization and mapping (SLAM)), etc.). The architecture also allows the self-localization devices to perform tasks that require collaboration (e.g., collaborative mapping, collaborative task planning, generating and maintaining a consistent world state estimate, etc.).
[0235] In some embodiments, the data access point 1510 includes a global property sensor (not shown). This can, for example, allow the data access point 1510 to provide data to the self-localization devices 130 that is useful for computing improved localization estimates.
[0236] In some embodiments, the data access point 1510 includes a memory (not shown) or a processing unit (not shown). This can, for example, allow the data access point 1510 to provide a service. In some embodiments, the data access point 1510 implements a push service. In some embodiments, the data access point 1510 implements a pull service.
[0237] In some embodiments, the data access point 1510 provides a communication link between two self-localization devices 130. This can allow the two self-localization devices 130 to exchange sensor data (e.g., data from a global property sensor, data from a vision sensor). In some embodiments, exchanging data can help the self-localization devices 130 use their localization units to compute improved estimates of their locations.
[0238] According to a first aspect of the present disclosure, there is provided a positioning system comprising three UWB transceivers, each UWB transceiver being operable to emit a UWB signal at a scheduled transmission time with reference to a clock of the transceiver; a self-positioning device being operable to receive and time-stamp the UWB signals with reference to a clock of the device; and a positioning unit being operable to calculate a relative position of the self-positioning device with respect to the three UWB transceivers based on the time-stamping of the received UWB signals.
[0239] In some embodiments, the self-positioning device can determine its position from the signals broadcasted by the at least one, two or three transceivers. This can be achieved based on the following knowledge of the self-positioning device: (1) the position of each of the at least one, two or three transceivers, (2) the exact transmission time of at least one signal of each of the one, two or three transceivers, (3) the exact time interval between the transmission times of the at least one, two or three transceivers, (4) the exact time interval between the transmission times of at least two consecutive signals of each of the at least one, two or three transceivers.
[0240] In some embodiments, the known position (1), the known exact transmission time (2), the known exact time interval between different transceiver signals (3), or the known exact time interval between signals of a signal transceiver (4) are predefined (e.g., which can be stored in a memory of the self-positioning device) or transmitted with the signals (e.g., as a payload).
[0241] In some embodiments, the transceivers are wired and can communicate over a wired connection.
[0242] In some embodiments, the transceivers communicate over a wireless connection. In some embodiments, the same signals that allow positioning of the self-positioning device are used for communication between the transceivers. In some embodiments, the transceivers communicate using UWB signals. In some embodiments, the communication of the transceivers is embedded in the UWB signals (sometimes referred to as “payload”). In some embodiments, the transceivers communicate to synchronize their clocks.
[0243] In some embodiments, the communication channel implements an error detection function (e.g., CRC generation and checking). In some embodiments, at least one of an Inter-Integrated Circuit bus (I2C) or a Serial Peripheral Interface bus (SPI) system is used.
[0244] The signals can be received from the transceivers through cables (e.g., wired setup) or through wireless connections. When a wired connection is used, the transceivers can transmit communication signals to and receive communication signals from transceivers that use digital transmit and digital receive electronics. The exchanged signals can be used primarily to synchronize the clocks of the transceivers. This is important because the rate at which a clock counts time is not constant between clocks and varies with time ("clock drift"), resulting in time differences between transceivers even if the clocks of all transceivers are initially set accurately. Furthermore, different clocks can have clock offsets. Also, different clock rates can evolve differently with time. Such differences can affect time stamping of signals and thus result in a degradation of positioning performance. Such differences can be avoided by using a wired setup with transceivers that are served by a single clock. In some embodiments, the wired setup uses equal lengths for each cable connecting a transceiver to the clock to ensure equal signal travel times from the clock to each transceiver.
[0245] In some implementations, the transceivers are constructed and arranged to receive wireless signals. In some embodiments, the transceivers are constructed and arranged to receive time-stampable signals. In some embodiments, the transceivers are constructed and arranged to receive UWB signals.
[0246] In some embodiments, the reception of wireless signals can improve transceiver performance. For example, a first transceiver can use wireless signals received from a second transceiver to adjust its internal clock. This can be achieved, for example, by a synchronization unit storing in memory the times at which wireless signals are received from other transceivers in the network and then adjusting a local clock based on these times. In some embodiments, the improved clock synchronization results in less variation between the rates at which different transceivers transmit signals. In some embodiments, a measure of the variation between transmission rates can be a metric used to evaluate the performance of a positioning network.
[0247] In some embodiments, the positioning system further comprises a scheduling unit operatively coupled to the three transceivers.
[0248] In some embodiments, the positioning system comprises an on-board actuator operable to affect motion of the device and a control unit operable to generate control signals for the on-board actuator of the device as a function of the relative position. In some embodiments, the control unit is further operable to calculate the control signals within less than 0.1, 0.2, 0.5, 1, or 5 seconds from receiving the data representing the relative position, and the on-board actuator is further constructed and arranged to affect motion of the device within less than 0.1, 0.2, 0.5, 1, or 5 seconds from receiving the control signals, so that the device can be controlled in real time.
[0249] In some embodiments, the positioning system is constructed and arranged to move the device in response to a disturbance of the relative position, wherein the movement reduces the disturbance in less than 5, 1, or 0.2 seconds. In some embodiments, the disturbance is a transient event.
[0250] In some embodiments, the disturbance changes the actual position of the device or robot by at least 1 m or by 10 cm. In some embodiments, the disturbance changes the actual orientation of the device or robot by at least 45 degrees or 10 degrees.
[0251] In some embodiments, the system for device positioning is operable to react to a disturbance of the position of the three transceivers by moving the device to reduce the disturbance in less than 0.1, 0.2, 0.5, 1, or 5 seconds. In some embodiments, the disturbance changes the actual position of the three transceivers by 1 m, 50 cm, 30 cm, or 10 cm. In some embodiments, the disturbance is a simultaneous, sudden linear shift in the position of all three transceivers.
[0252] In some embodiments, the positioning system includes a compensation unit and a memory unit, and the positioning unit is further operable to calculate the relative position from a compensation calculated by the compensation unit and data provided by the memory unit. In some embodiments, the relative position is calculated using time difference of arrival (TDOA) techniques. In some embodiments, the memory unit is operable to store an identifier and a position for each of the three UWB transceivers. In some embodiments, the memory unit is operable to store a time difference of arrival.
[0253] In some embodiments, the self-positioning device 130 further includes a sensor constructed and arranged to detect an absence of motion, and the positioning unit of the self-positioning device is further operable to calculate the relative position from the absence of motion.
[0254] In some embodiments, each of the three UWB transceivers further includes a sensor constructed and arranged to detect a disturbance to the position or orientation of the UWB transceiver. In some embodiments, the disturbance is one of a change in orientation or position. In some embodiments, the disturbance is a vibration. In some embodiments, the sensor is an accelerometer. In some embodiments, the sensor is operatively coupled to the digital transmit electronics of the transceiver, and the digital transmit electronics of the transceiver is operable to transmit data indicative of the disturbance to the self-positioning device.
[0255] In some embodiments, the self-positioning device further comprises a compensation unit. In some embodiments, the compensation unit is operatively coupled to the digital receiving electronics or the memory unit of the device and is operable to compute one of (i) a compensation for a time of arrival difference between a time of arrival of a first UWB signal traveling to the device from a first transceiver and a time of arrival of a second UWB signal traveling to the device from a different second transceiver, and (ii) a compensation for a time stamp of a first UWB signal traveling to the device from a first transceiver.
[0256] In some embodiments, the system for device positioning is operable to maintain the position of the device relative to three transceivers regardless of perturbations to the orientation of the device antenna on any of the axes of the antenna axes. In some embodiments, the perturbations change the orientation of the device antenna by more than 10 degrees, 30 degrees, or 60 degrees. In some embodiments, the perturbations change the orientation of the device antenna on any of its three axes.
[0257] In some embodiments, the system for device positioning is further operable to compute the compensation according to a movement model of the device. In some embodiments, the system for device positioning is further operable to compute the compensation according to a motion model of the device.
[0258] In some embodiments, the system for device positioning is further operable to compute the compensation to be within 0.6, 3, or 15 nanoseconds. In some embodiments, the compensation unit is further operable to compute the compensation such that the statistical average error of the actual time of arrival difference or the actual time of arrival from the computed compensation is less than 0.6, 3, or 15 nanoseconds.
[0259] In some embodiments, a centralized clock is used to synchronize the wired transceivers. In some embodiments, the clock synchronization UWB signal is a UWB signal.
[0260] In some embodiments, the transceiver antenna is constructed and arranged to (i) transmit the UWB signal and (ii) receive the UWB clock synchronization signal. In some embodiments, separate antennas are used for the UWB signal and the UWB clock synchronization signal. In some embodiments, each of the antennas of the at least three UWB transceivers is constructed and arranged to transmit and receive the UWB clock synchronization signal.
[0261] In some embodiments, the sensor comprises at least one of a camera, an accelerometer, a magnetometer, and a gyroscope. In some embodiments, the sensor belongs to the group of accelerometers, gyroscopes, magnetometers, cameras, optical flow sensors, barometers, encoders, and infrared sensors. In some embodiments, the sensor belongs to the larger group of accelerometers, gyroscopes, magnetometers, cameras, optical flow sensors, laser or sonar rangefinders, radar, barometers, thermometers, hygrometers, bumpers, chemical sensors, electromagnetic sensors, airflow sensors and relative airspeed sensors, ultrasonic sensors, microphones, radio sensors, and other height, distance, and range sensors, as well as infrared sensors, time-of-flight sensors, and encoders. In some embodiments, the heading sensor is one of a magnetometer or an accelerometer. In some embodiments, the device comprises a sensor structured and arranged to detect data representative of operation of at least one actuator for the device.
[0262] According to another aspect of the disclosure, the mobile robot is configured and arranged to move in accordance with a comparison of the UWB signal, the on-board sensor signal, and the global property at the first and second locations.
[0263] In some embodiments, the reference signal for the mobile robot represents a desired position or heading of the mobile robot (or an antenna of the mobile robot), and the movement reduces a perturbation of an actual position or heading of the mobile robot (or its antenna) relative to the desired position or heading of the mobile robot (or its antenna) caused by a change in at least one of the heading, position, or movement of the mobile robot (or the antenna).
[0264] According to another aspect of the disclosure, the on-board signal can be generated based on a position of a self-localizing device relative to at least four UWB transceivers having known relative positions. In some embodiments, the clocks of the transceivers can be synchronized, and each of the four transceivers can transmit a UWB signal at a scheduled transmission time. The self-localizing device can receive the signals using its clock and time-stamp them, and retrieve the transmission time-stamp of each signal in the time of the synchronized transceiver clocks (e.g., by retrieving them from memory or by decoding them from the UWB signal(s)). The position of the self-localizing device relative to the transceivers can then be computed based on the known relative positions, the four transmission time-stamps, and the four reception time-stamps, and compared to a reference position or a threshold. The self-localizing device can then generate a control signal for an on-board actuator, a signal for an on-board speaker, a signal for an on-board display, or a wireless signal based on the comparison.
[0265] In some embodiments, the self-localizing device is wearable. In some embodiments, the self-localizing device is operable to provide user feedback (e.g., provide audio via a speaker, provide images or video via a display).
[0266] According to another aspect of the disclosure, an airborne signal can be generated based on a position of a self-localizing device relative to at least three UWB transceivers having known relative positions. The self-localizing device can transmit at least one UWB signal and store at least one transmission time tag of the at least one UWB signal in memory at a time of the self-localizing device clock. The three UWB transceivers can then each receive one of the at least one UWB signal at a reception time and each transmit a UWB signal. These transmitted signals can then be received and time tagged by the self-localizing device at a time of the localizing device clock. First, second, and third transmission delays between the receptions and transmissions of the first, second, and third transceivers can then be retrieved from memory, or decoded from the UWB signals, and the position of the self-localizing device relative to the transceivers can then be computed based on the known positions, the reception time tags, the delays, and the at least one transmission time tag, and compared to a reference position or a threshold. The self-localizing device can then generate a control signal for an airborne actuator, a signal for an airborne speaker, a signal for an airborne display, or a wireless signal based on the comparison.
[0267] According to another aspect of the disclosure, the effects of movement of UWB transceivers having known relative positions and each including a sensor as part of a network of UWB transceivers can be mitigated by detecting the movement using the sensor, wirelessly transmitting information indicative of the movement, and performing one or more of a compensation, an adjustment of a calculation of a position, or triggering an alert.
[0268] According to another aspect of the disclosure, a system for device localization is provided, the system including three UWB transmitters and a self-localizing device, wherein one of the UWB transmitters and the device each include a global property sensor, and wherein the self-localizing device further includes a central processing electronic component operable to compute a position of the device relative to the three UWB transceivers based on received UWB signals and sensor data from the two global property sensors. In some embodiments, the sensed global property can be one of atmospheric pressure, magnetic field, landmarks, GPS signals, and gravity. In some embodiments, the computation can be further based on a comparison of the sensor data, or use of a global property model for the sensor data, or use of data representative of an orientation or motion of the device. In some embodiments, the central processing electronic component is further operable to compute a control signal for an actuator based on the comparison, the use of the global property model, or the use of the data representative of the orientation or motion of the device.
[0269] According to another aspect of the disclosure, a mobile robot is provided, comprising an actuator operable to affect movement of the mobile robot based on at least one time-stamped UWB signal and a reference signal. In some embodiments, the actuator is further operable to affect the movement based on a comparison of an on-board sensor signal to an off-board sensor signal received from an off-board sensor at a remote location and generated based on a global property at the remote location. In some embodiments, the mobile robot is operable to compare the on-board sensor signal to the off-board sensor signal using a global property model. In some embodiments, the actuator is further operable to affect the movement based on a signal indicative of at least one of a position, an orientation, and a movement of a UWB transmitter generating the UWB signal. In some embodiments, the mobile robot comprises a localization unit and a control unit operable to generate a control signal for the actuator.
[0270] In some embodiments, an additional UWB transceiver can be added to a network of UWB transceivers. The UWB network can include at least first, second, and third UWB transceivers having known relative positions to each other. In some embodiments, the additional wireless UWB transceiver and each of the first, second, and third UWB transceivers can include a clock.
[0271] In some embodiments, the additional UWB transceiver can be activated within wireless reception range of the first, second, and third UWB transceivers. The relative position of the additional UWB transceiver to the first, second, and third UWB transceivers can be partially or wholly unknown.
[0272] In some embodiments, each of the three UWB transceivers can be configured to wirelessly transmit a UWB signal. Each of the three UWB transceivers can be configured to generate a time stamp each time a UWB signal is transmitted by that UWB transceiver. The additional UWB transceiver can be configured to receive UWB signals transmitted by any of the other UWB transceivers. In some embodiments, the additional UWB can be configured to time stamp the time of receipt of any UWB signal received from any of the other UWB transceivers. For example, in some embodiments, when a UWB signal is transmitted by the first UWB transceiver, the first UWB transceiver can create a transmission time stamp, while the additional UWB transceiver can create a reception time stamp when it receives the UWB signal.
[0273] In some embodiments, the first UWB transceiver can transmit a first UWB signal and create a first transmission time stamp based on a clock of the first UWB transceiver. The second UWB transceiver can transmit a second UWB signal and create a second transmission time stamp based on a clock of the second UWB transceiver. The third UWB transceiver can transmit a third UWB signal and create a third transmission time stamp based on a clock of the third UWB transceiver.
[0274] In some embodiments, the additional UWB transceiver can receive the first UWB signal and generate a first reception time stamp based on a clock of the additional UWB transceiver. The additional UWB transceiver can also receive the second UWB signal and generate a second reception time stamp based on the clock of the additional UWB transceiver. The additional UWB transceiver can also receive the third UWB signal and generate a third reception time stamp based on the clock of the additional UWB transceiver.
[0275] In some embodiments, the position calibration unit can calculate a position of the additional UWB transceiver relative to the first, second, and third UWB transceivers based on the reception of the first, second, and third received UWB signals and the known relative positions of the first, second, and third UWB transceivers. In some embodiments, the position calibration unit can calculate a position of the additional UWB transceiver relative to the first, second, and third UWB transceivers based on the first, second, and third reception time stamps and the known relative positions of the first, second, and third UWB transceivers.
[0276] In some embodiments, the UWB network can include a fourth UWB transceiver. The fourth UWB transceiver can have a known position relative to the first, second, and third UWB transceivers and include a clock.
[0277] In some embodiments, the additional UWB transceiver can be within a reception range of the fourth UWB transceiver. The fourth UWB transceiver can transmit a fourth UWB signal and create a fourth transmission time stamp based on a clock of the fourth UWB transceiver. The additional UWB transceiver can also receive the fourth UWB signal and generate a fourth reception time stamp based on a clock of the additional UWB transceiver. In some embodiments, the fourth reception time stamp can also be used to calculate a position of the additional UWB transceiver relative to the first, second, third, and fourth UWB transceivers.
[0278] In some embodiments, the clocks of the first, second, and third UWB transceivers can be synchronized. In some embodiments, the first, second, and third transmission time markers can be known in the form of time of the synchronized clocks. In some embodiments, the first, second, and third transmission time markers can be retrieved from a memory of the additional UWB transceiver. In some embodiments, the first, second, and third transmission time markers can be decoded from the UWB signals. In some embodiments, the first, second, and third transmission time markers can also be used to calculate the position of the additional UWB transceiver relative to the first, second, and third UWB transceivers.
[0279] In some embodiments, the additional UWB transceiver can wirelessly transmit at least one additional UWB signal prior to the wireless transmission of the first, second, and third UWB signals. The additional UWB transceiver can generate and store an additional transmission time marker in a memory based on a clock of the additional UWB transceiver.
[0280] In some embodiments, the first UWB transceiver can receive the additional UWB signal and generate a first additional reception time marker based on a clock of the first UWB transceiver. The second UWB transceiver can receive the additional UWB signal and generate a second additional reception time marker based on a clock of the second UWB transceiver. The third UWB transceiver can receive the additional UWB signal and generate a third additional reception time marker based on a clock of the third UWB transceiver.
[0281] In some embodiments, a first transmission delay between receiving a UWB signal at the first UWB transceiver and the corresponding transmission of the UWB signal from the first UWB transceiver is known. In some embodiments, a second transmission delay between receiving a UWB signal at the second UWB transceiver and the corresponding transmission of the UWB signal from the second UWB transceiver is known. In some embodiments, a third transmission delay between receiving a UWB signal at the third UWB transceiver and the corresponding transmission of the UWB signal from the third UWB transceiver is known.
[0282] In some embodiments, the first, second, and third transmission delays can be retrieved from a memory on the additional UWB transceiver. In some embodiments, the first, second, and third transmission delays can be decoded from one or more UWB signals received by the additional UWB transceiver. In some embodiments, the first, second, and third transmission delays and the stored additional transmission time marker can be used to calculate the position of the additional UWB transceiver relative to the first, second, and third UWB transceivers.
[0283] In some embodiments, the scheduling unit can be used to adjust the transmission schedule of the UWB signals to include scheduled transmission of UWB signals from the additional UWB transceiver. In some embodiments, the schedule can allocate time division multiple access (TDMA) time slots. In some embodiments, at least one TDMA time slot can be allocated for transmission of UWB signals from the additional UWB transceiver.
[0284] In some embodiments, the plurality of UWB signals can be wirelessly transmitted from the first, second, and third UWB transceivers and the additional UWB transceiver such that each of the plurality of UWB signals includes embedded relative position information of the transmitting UWB transceiver.
[0285] In some embodiments, the self-localization device can receive the plurality of UWB signals and compute a relative position of the self-localization device based on the received plurality of UWB signals.
[0286] In some embodiments, the computation of the position of the additional UWB transceiver relative to the first, second, and third UWB transceivers by the position calibration unit can be based on the transmission time stamps of the first, second, and third UWB signals.
[0287] In some embodiments, the transmission time stamps of the first, second, and third UWB signals can be retrieved from memory or received as a payload of the at least one UWB signal and decoded from the at least one UWB signal.
[0288] In some embodiments, the determination of when to wirelessly transmit the at least one additional UWB signal can be based on (1) one or more predetermined rules or (2) data received by the additional UWB transceiver. In some embodiments, the determination of the scheduled transmission time slot for the additional UWB transceiver can be performed using the scheduling unit or based on at least one of (i) the schedule of the first, second, and third transmission times, (ii) a desired time interval between the UWB signals of the first, second, or third transceivers and the UWB signals of the additional transceiver, or (iii) a scheduling protocol.
[0289] In some embodiments, the method can further include determining a scheduled transmission time slot for the additional UWB transceiver and wirelessly transmitting the additional UWB signal using the additional UWB transceiver can be based on the scheduled transmission time slot.
[0290] In some embodiments, the computation of the position of the additional UWB transceiver can be further based on a transmission time stamp of a fourth UWB signal.
[0291] In some embodiments, a method is used for calibrating UWB transceivers in a network of UWB transceivers. The UWB network can include at least first, second, and third UWB transceivers. Initially, the relative positions of the three transceivers can be completely or partially unknown relative to one another. One goal of the calibration can be to calculate the relative positions of the first, second, and third UWB transceivers.
[0292] In some embodiments, each of the three UWB transceivers can be configured to wirelessly transmit UWB signals. Each of the three UWB transceivers can also be configured to receive UWB signals transmitted by any other UWB transceiver. In some embodiments, each of the three UWB transceivers can be configured to time-stamp the transmission time of any UWB signal it transmits, and to time-stamp the reception time of any UWB signal it receives from any other UWB transceiver. For example, in some embodiments, a UWB signal transmitted by the first UWB transceiver can be received by both the second and third UWB transceivers. Each of the second and third UWB transceivers can then generate a reception time-stamp indicating the time when the UWB signal from the first UWB transceiver was received.
[0293] In some embodiments, the relative positions of the three UWB transceivers can be determined based on reception time-stamps generated by at least two of the three UWB transceivers.
[0294] In some embodiments, at least three reception time-stamps can be used to determine the relative positions of the three UWB transceivers. For example, the first UWB transceiver can transmit a first UWB signal that can be received by the second UWB transceiver and the third UWB transceiver, where each of the second and third UWB transceivers generates a respective reception time-stamp at the reception time of the first UWB signal. The second UWB transceiver can also transmit a second UWB signal that can be received by at least the third UWB transceiver, where the third UWB transceiver generates a reception time-stamp at the reception time of the second UWB signal.
[0295] In some embodiments, the first UWB transceiver can transmit a first UWB signal that can be received and time-stamped by the second UWB transceiver. The second UWB transceiver can transmit a second UWB signal that can be received and time-stamped by the third transceiver. The third UWB transceiver can transmit a third UWB signal that can be received and time-stamped by the first UWB transceiver.
[0296] Thus, in some embodiments, at least two of the first, second, and third UWB transceivers are used to transmit at least two UWB signals. One or more of the at least two UWB signals are subsequently received by at least two of the first, second, and third UWB transceivers, resulting in at least three receptions of the at least two UWB signals. Each of the at least three receptions can be time-stamped by at least two of the first, second, and third UWB transceivers, resulting in the generation of at least three reception time-stamps.
[0297] In some embodiments, the at least three reception time-stamps can subsequently be received at a position calibration unit. The position calibration unit can subsequently compute the relative positions of the first, second, and third UWB transceivers based on the at least three reception time-stamps. In some embodiments, the position calibration unit can solve a hyperbolic system of equations or a linearized version of a hyperbolic system of equations to compute the relative positions of the first, second, and third UWB transceivers.
[0298] In some embodiments, the position calibration unit can also receive at least two transmission time-stamps of the at least two UWB signals. In some embodiments, the at least two transmission time-stamps can have been received from memory or have been received as a payload and decoded from the at least two UWB signals or from other UWB signals. In some embodiments, the position calibration unit can subsequently compute the relative positions of the first, second, and third UWB transceivers based on the at least three reception time-stamps and the at least two transmission time-stamps.
[0299] In some embodiments, the first UWB transceiver includes a first clock, the second UWB transceiver includes a second clock, and the third UWB transceiver includes a third clock. In some embodiments, a synchronization unit can be used to synchronize the first, second, and third clocks, thereby reducing differences in time offsets or rates.
[0300] In some embodiments, certain of the first, second, and third UWB transceivers can include a sensor. In some embodiments, each sensor can be configured to measure at least one common global property, such as gravity, electromagnetic force, fluid pressure, gas pressure, global positioning signals, or radio time signals. For example, the first UWB transceiver can include a first gravity sensor, and the second UWB transceiver can include a second gravity sensor.
[0301] In some embodiments, the first UWB transceiver can receive first data from the first sensor and the second UWB transceiver can receive second data from the second sensor and the third UWB transceiver can receive third data from the third sensor. In some embodiments, the UWB signal generated by the first UWB transceiver can include payload data representing the first data, the UWB signal generated by the second UWB transceiver can include payload data representing the second data, and the UWB signal generated by the third UWB transceiver can include payload data representing the third data. In some embodiments, calculating the relative position can be further based on at least two of the first data, the second data, and the third data.
[0302] In some embodiments, the network of UWB transceivers can include a fourth UWB transceiver. In some embodiments, the relative position of the fourth UWB transceiver relative to the positions of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver can be completely or partially unknown. In some embodiments, the fourth UWB transceiver can similarly transmit UWB signals wirelessly and receive and time-stamp UWB signals transmitted by the other UWB transceivers.
[0303] In some embodiments, at least six reception time-stamps can be used to determine the relative positions of the four UWB transceivers. Thus, in some embodiments, at least three of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver are used to transmit at least three UWB signals. Two or more of the at least three UWB signals are subsequently received by at least three of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver, resulting in at least six receptions of the at least three UWB signals. Each of the at least six receptions can be time-stamped by at least three of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver, resulting in the generation of at least six reception time-stamps.
[0304] In some embodiments, the at least six reception time-stamps can then be received at the position calibration unit. The position calibration unit can then calculate the relative positions of the first, second, third, and fourth UWB transceivers based on the at least six reception time-stamps.
[0305] In some embodiments, data representing the relative positions of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver can be transmitted to a self-localizing device within a range of at least one of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver.
[0306] In some embodiments, at least one of the first, second, and third UWB transceivers can comprise a sensor configured to detect movement of that UWB transceiver. In some embodiments, at least one of the first, second, and third UWB transceivers can wirelessly transmit information indicative of its movement in response to detecting movement.
[0307] In some embodiments, the scheduling unit can schedule transmission of UWB signals from the first, second, and third UWB transceivers. In some embodiments, the scheduling can compromise a TDMA time slot allocation.
[0308] In some embodiments, the UWB transceiver network can comprise an additional UWB transceiver. Transmission of the additional UWB transceiver can be configured to not interfere with transmission of a particular one of the first, second, and third UWB transceivers. In some embodiments, the scheduling unit can allocate one TDMA time slot to the additional UWB transceiver and the particular one of the first, second, and third UWB transceivers.
[0309] In some embodiments, the position calibration unit can be used to refine relative positions of the first, second, and third UWB transceivers based on at least two successively transmitted UWB signals.
[0310] In some embodiments, an initial relative position of the UWB transceivers in the position calibration unit can be initialized based on partial knowledge. The initialization can comprise initializing a position estimate. In some embodiments, the position calibration unit can continuously maintain an estimate of the relative positions of the UWB transceivers. The maintaining can comprise computing an updated position estimate.
[0311] While certain aspects of the application have been specifically shown and described, ordinary skilled persons will understand that various modifications can be made in form and detail without departing from the spirit and scope of the application as defined in the following claims. For example, particular aspects of the present disclosure that apply to time-tagged signals can equally well apply to UWB signals, and vice versa. As a further example, particular aspects of the present disclosure that apply to signal 102 can equally well apply to signal 104, and vice versa. As a further example, particular aspects of the present disclosure that apply to signal 104 can equally well apply to signal 1530, and vice versa. As a further example, particular aspects of the present disclosure that apply to positioning unit 152 can equally well apply to position calibration unit 180, and vice versa.
[0312] It should also be appreciated that the transceivers, devices, and components of this disclosure can include hardware components, or combinations of hardware and software components. The hardware components can include any suitable hardware-structured
[0313] It is, therefore, desired that the present embodiments be considered in all respects as illustrative and not restrictive.
[0314] Reference Signs
[0315] 100 Positioning System
[0316] 102 Time-Taggable Signals
[0317] 104 Time-Taggable Signals Between Transceivers
[0318] 110 Transceivers
[0319] 110a Transceiver 0
[0320] 110b Transceiver 1
[0321] 110c Transceiver 2
[0322] 112 Antennas of Transceivers
[0323] 116 Analog Transmit Electronics of Transceivers
[0324] 118 Digital Transmit Electronics of Transceivers
[0325] 130 Self-Positioning Device
[0326] 132 Antennas of Self-Positioning Device
[0327] 136 Analog Receive Electronics of Self-Positioning Device
[0328] 148 Digital Receive Electronics of Self-Positioning Device
[0329] 150 Scheduling Unit
[0330] 152 Positioning Unit
[0331] 154 Sensors of Transceivers
[0332] 155 Sensors of Self-Positioning Device
[0333] 156 Global property of the transceiver
[0334] 158 Global property of the self-localization device
[0335] 160 Analog reception electronics of the transceiver
[0336] 164 Digital reception electronics of the transceiver
[0337] 170 Memory of the transceiver
[0338] 171 Memory of the self-localization device
[0339] 174 Synchronization unit
[0340] 180 Position calibration unit
[0341] 202 Mobile transmitter
[0342] 204 Fixed receiver
[0343] 206 Centralized positioning system
[0344] 208 Signal transmitted from the mobile transmitter
[0345] 252 Mobile transceiver
[0346] 254 Fixed transceiver
[0347] 258 Bidirectional signal transmitted between the fixed transceiver and the mobile transceiver
[0348] 300 Clock
[0349] 304 Synchronization signal
[0350] 500 Compensation unit
[0351] 600 Progression of time measured in the clock of the self-localization device A
[0352] 602 Time of arrival of the first message at the antenna of the self-localization device A
[0353] 604 Difference between the time stamp of the first message by the digital reception electronics of the self-localization device A and the time of arrival of the first message at the antenna of the self-localization device A
[0354] 606 Time stamp of the first message by the digital reception electronics of the self-localization device A
[0355] 612 Time of arrival of the second message at the antenna of the self-localization device A
[0356] 614 difference between the time stamp of the second message by the digital reception electronics of the self-localization device A and the time of arrival of the second message at the antenna of the self-localization device A
[0357] 616 time stamp of the second message by the digital reception electronics of the self-localization device A
[0358] 700 channel impulse response (CIR)
[0359] 702 UWB signal noise floor level
[0360] 710 UWB signal preamble
[0361] 712 UWB signal start-of-frame delimiter (SFD)
[0362] 714 UWB signal packet header
[0363] 716 UWB signal payload
[0364] 720 time progression during UWB signal transmission
[0365] 722 time of UWB signal transmission start
[0366] 724 time of UWB signal transmission end
[0367] 800 reception time stamp
[0368] 802 clock correction
[0369] 804 influence compensation
[0370] 806 corrected time of arrival
[0371] 810 remote global properties
[0372] 812 comparison
[0373] 814 global properties model
[0374] 820 extended Kalman filter process update
[0375] 822 priori
[0376] 824 extended Kalman filter measurement update
[0377] 826 posteriori
[0378] 830 position
[0379] 840 control unit
[0380] 900 relative angle between self-localization device and transceiver
[0381] 900a Relative angle between self-positioning device and transceiver 0
[0382] 900b Relative angle between self-positioning device and transceiver 1
[0383] 902 Reception delay of UWB signal caused by relative angle between self-positioning device and transceiver
[0384] 902a Reception delay of UWB signal caused by relative angle between self-positioning device and transceiver 0
[0385] 902b Reception delay of UWB signal caused by relative angle between self-positioning device and transceiver 1
[0386] 903 Coordinate system
[0387] 904 Distance between self-positioning device and transceiver
[0388] 904a Distance between self-positioning device and transceiver 0
[0389] 904b Distance between self-positioning device and transceiver 1
[0390] 906 Reception delay of UWB signal caused by distance between self-positioning device and transceiver
[0391] 906a Reception delay of UWB signal caused by distance between self-positioning device and transceiver 0
[0392] 906b Reception delay of UWB signal caused by distance between self-positioning device and transceiver 1
[0393] 908 Equivalent obstacle width between self-positioning device and transceiver
[0394] 908c Equivalent obstacle width between self-positioning device and transceiver 2
[0395] 910 Reception delay of UWB signal caused by equivalent obstacle width between self-positioning device and transceiver
[0396] 910a Reception delay of UWB signal caused by equivalent obstacle width between self-positioning device and transceiver 0
[0397] 910b Reception delay of UWB signal caused by equivalent obstacle width between self-positioning device and transceiver 1
[0398] 910c Reception delay of UWB signal caused by equivalent obstacle width between self-positioning device and transceiver 2
[0399] 1004 Onboard actuator
[0400] 1006 mobile
[0401] 1008 reference signal
[0402] 1100 mobile robot
[0403] 1102 central processing electronics
[0404] 1104 gyroscope
[0405] 1106 accelerometer
[0406] 1110 propeller
[0407] 1112 external controller
[0408] 1114 external sensor
[0409] 1202 horizontal controller
[0410] 1204 command specifying acceleration of carrier in x direction
[0411] 1206 command specifying acceleration of carrier in y direction
[0412] 1210 vertical controller
[0413] 1212 command specifying acceleration of carrier in z direction
[0414] 1220 pitch controller
[0415] 1222 command specifying pitch rate of carrier
[0416] 1224 command specifying roll rate of carrier
[0417] 1230 yaw controller
[0418] 1232 command specifying yaw rate of carrier
[0419] 1242 body rate controller
[0420] 1244 actuator command
[0421] 1300a time difference of arrival (TDOA) between receipt of packet 120a at time Rl and receipt of packet 120b at time R2
[0422] 1300b time difference of arrival (TDOA) between receipt of packet 120b at time R2 and receipt of packet 120c at time R3
[0423] 1300c Time difference of arrival (TDOA) between receiving packet 120c at time R3 and receiving packet 120d at time R4
[0424] 1310 Regular time intervals (T2-T1 = T3-T2 = T4-T3) between polling transmissions of packets
[0425] 1400 Radial coverage of transceiver signals
[0426] 1410 Wireless communication between two in-range transceivers
[0427] 1420 Overlapping spatial coverage of multiple transceivers within one cell
[0428] 1440 Overlapping spatial coverage of multiple transceiver units
[0429] 1500 Data transceiver
[0430] 1505 Data transceiver antenna
[0431] 1510 Data access point
[0432] 1520 Bidirectional signaling between data transceiver and data access point
[0433] 1530 Bidirectional signaling between two data transceivers.
Claims
1. A method for calibrating UWB transceivers in an ultra-wideband (UWB) transceiver network, the UWB transceiver network comprising at least a first UWB transceiver, a second UWB transceiver, and a third UWB transceiver, each having at least partially unknown relative positions, wherein the first UWB transceiver includes a first sensor, and wherein the second UWB transceiver includes a second sensor, the method comprising: At least two UWB signals are wirelessly transmitted using at least two of the first, second, and third UWB transceivers; One or more of the at least two UWB signals are received at at least two of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver, wherein there are at least three receptions of the at least two UWB signals; Each of the at least three receptions is time-stamped to generate at least three reception time stamps; The at least three receiving time markers are received at the position calibration unit; The first global characteristic data from the first sensor is received at the position calibration unit; The second global characteristic data from the second sensor is received at the position calibration unit; as well as The position calibration unit is used to calculate the relative positions of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver based on the at least three receive time stamps and the difference between the first global characteristic data and the second global characteristic data.
2. The method according to claim 1, further comprising: The relative positions of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver are initialized in the position calibration unit based on partial knowledge.
3. The method according to claim 2, wherein: The position calibration unit continuously maintains an estimate of the relative positions of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver; The initialization includes initializing the position estimate; and The calculation includes updating the location estimate.
4. The method according to claim 1, wherein: Wirelessly transmitting the at least two UWB signals includes: Wirelessly transmit at least one first UWB signal using a first UWB transceiver; and Use a second UWB transceiver to wirelessly transmit a second UWB signal; Receiving one or more of the at least two UWB signals at at least two of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver includes: Receive one of the at least one first UWB signal at the second UWB transceiver; Receive one of the at least one first UWB signal at the third UWB transceiver; and Receive the second UWB signal at the third UWB transceiver; and Time-stamping each of the at least three receptions to generate at least three reception timestamps includes: The reception of one of the at least one first UWB signal at the second UWB transceiver is time-stamped based on the clock of the second UWB transceiver to generate a first time stamp. The reception of one of the at least one first UWB signal at the third UWB transceiver is time-stamped based on the clock of the third UWB transceiver to generate a second time stamp; and The reception of the second UWB signal at the third UWB transceiver is time-stamped based on the clock of the third UWB transceiver to generate a third time stamp.
5. The method according to claim 4, wherein the first sensor and the second sensor each comprise a barometric pressure sensor, and the method further comprises: Send the first global characteristic data to the position calibration unit; as well as Send the second global characteristic data to the position calibration unit.
6. The method according to claim 4, further comprising: Before the wireless transmission of one of the at least one first UWB signals and before the second UWB signal, at least one third UWB signal is wirelessly transmitted using a third UWB transceiver; Before the wireless transmission of one of the at least one first UWB signal, a fourth UWB signal is wirelessly transmitted using a second UWB transceiver; Receive the fourth UWB signal at the first UWB transceiver; Receive one of the at least one third UWB signal at the first UWB transceiver; and Receive one of the at least one third UWB signal at the second UWB transceiver. The calculation of the relative position is also based on: At least one transmission time marker of the at least one third UWB signal; The transmission time stamp of the fourth UWB signal; The known transmission delay between the reception of a UWB signal at the first UWB transceiver and the corresponding transmission of the UWB signal from the first UWB transceiver; and The known transmission delay between the reception of a UWB signal at the second UWB transceiver and the corresponding transmission of a UWB signal from the second UWB transceiver.
7. The method according to claim 1, wherein: The UWB transceiver network includes a fourth UWB transceiver having a relative position that is at least partially unknown relative to the first, second, and third UWB transceivers. Wirelessly transmitting the at least two UWB signals using at least two of the first, second, and third UWB transceivers includes wirelessly transmitting at least three UWB signals using at least three of the first, second, third, and fourth UWB transceivers. Receiving one or more of the at least two UWB signals at at least two of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver includes receiving one or more of the at least three UWB signals at at least three of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver, wherein there are at least six receptions of the at least three UWB signals; Time-stamping each of the at least three receptions includes time-stamping each of the at least six receptions to generate at least six time stamps; Receiving the at least three time stamps includes receiving the at least six time stamps; as well as Calculating the relative positions includes calculating the relative positions of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver based on the at least six time stamps.
8. The method of claim 7, wherein calculating the relative positions of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver comprises solving a system of hyperbolic equations or a linearized version thereof.
9. The method of claim 1, further comprising transmitting data indicating the relative positions of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver to a self-positioning device within range of at least one of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver.
10. The method of claim 1, wherein one of the first, second, and third UWB transceivers includes a sensor configured to detect movement, the method further comprising: The movement of one of the UWB transceivers is detected based on sensor signals from the sensor. as well as In response to the detection of movement, information indicating that one of the UWB transceivers has moved is wirelessly transmitted.
11. The method of claim 1, wherein the first UWB transceiver includes a first clock, the second UWB transceiver includes a second clock, and the third UWB transceiver includes a third clock, the method further comprising using a synchronization unit to synchronize timing offsets or rate errors of the first clock, the second clock, and the third clock, the method further comprising: The scheduling unit is used to schedule the transmission of UWB signals from the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver.
12. The method of claim 11, wherein scheduling the transmission includes scheduling a time-division multiplexing (TDMA) time slot, wherein the UWB transceiver network includes additional UWB transceivers, wherein the wireless transmission of the additional UWB transceivers does not interfere with a particular UWB transceiver among the first, second, and third UWB transceivers, and wherein scheduling the TDMA time slot includes allocating a TDMA time slot to both the additional UWB transceiver and the particular UWB transceiver among the UWB transceivers.
13. The method of claim 1, further comprising using the position calibration unit to calculate the refined relative positions of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver based on at least two successively transmitted UWB signals.
14. An ultra-wideband (UWB) system, comprising A first UWB transceiver includes a first clock and a first sensor, and is configured to receive first global characteristic data from the first sensor; The second UWB transceiver includes a second clock and a second sensor, and is configured to receive second global characteristic data from the second sensor; Including a third UWB transceiver with a third clock, in: At least two of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver are configured to transmit at least two UWB signals; The first UWB transceiver is configured to transmit the first global characteristic data; The second UWB transceiver is configured to transmit the second global characteristic data; and At least two of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver are configured to receive one or more of the at least two UWB signals, wherein there are at least three receptions of the at least two UWB signals and wherein each reception is time-stamped based on the clock of the UWB transceiver performing the reception; as well as The position calibration unit is configured to: Receive at least three receive timestamps, the first global characteristic data, and the second global characteristic data; as well as Based on the at least three receiving time stamps and the difference between the first global characteristic data and the second global characteristic data, the relative positions of the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver are calculated.
15. The system of claim 14, wherein: The first UWB transceiver is configured to wirelessly transmit at least one of the at least two UWB signals as a first UWB signal; The second UWB transceiver is configured to: Wirelessly transmit the second UWB signal of the at least two UWB signals; Receive one of the at least one first UWB signal; and The reception of one of the at least one first UWB signal is time-stamped based on the second clock to generate a first time stamp among the at least three time stamps; as well as The third UWB transceiver is configured to: Receive the second UWB signal; The reception of the second UWB signal is time-stamped based on the third clock to generate the second time stamp among the at least three time stamps; Receive one of the at least one first UWB signal; as well as The reception of one of the at least one first UWB signal is time-stamped based on the second clock to generate a third time stamp among the at least three time stamps.
16. The system of claim 14, wherein each of the first sensor and the second sensor comprises a barometric pressure sensor.
17. The system of claim 15, wherein: The third UWB transceiver is also configured to wirelessly transmit at least one third UWB signal before transmitting the at least one first UWB signal and before transmitting the second UWB signal; The second UWB transceiver is also configured to: A fourth UWB signal is wirelessly transmitted before one of the at least one first UWB signal is wirelessly transmitted; and Receive one of the at least one third UWB signal; The first UWB transceiver is configured to: Receive one of the at least one third UWB signal; and Receive the fourth UWB signal; and The position calibration unit is also configured to calculate the relative position based on the following: At least one transmission time marker of the at least one third UWB signal; The transmission time stamp of the fourth UWB signal; The known transmission delay between the reception of a UWB signal at the first UWB transceiver and the corresponding transmission of a UWB signal from the first UWB transceiver; and The known transmission delay between the reception of a UWB signal at the second UWB transceiver and the corresponding transmission of a UWB signal from the second UWB transceiver.
18. The system of claim 14, further comprising: A fourth UWB transceiver including a fourth clock, wherein the fourth UWB transceiver has a relative position with respect to the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver that is at least partially unknown. in: At least three of the first, second, third, and fourth UWB transceivers are configured to transmit at least three UWB signals; At least three of the first, second, third, and fourth UWB transceivers are configured to receive one or more of the at least three UWB signals, wherein there are at least six receptions of the at least three UWB signals and wherein each reception is time-stamped based on the clock of the UWB transceiver performing the reception; and The position calibration unit is configured to determine the relative positions of the first UWB transceiver, the second UWB transceiver, the third UWB transceiver, and the fourth UWB transceiver based on at least six time markers.
19. The system of claim 14, further comprising: The self-positioning device is configured to: Receive UWB signals from the first UWB transceiver, the second UWB transceiver, and the third UWB transceiver; as well as The relative position of the self-positioning device is calculated based on the received UWB signal.