WO1998028634A2 - Detection system for determining positional and other information about objects - Google Patents

Detection system for determining positional and other information about objects Download PDF

Info

Publication number
WO1998028634A2
WO1998028634A2 PCT/GB1997/003359 GB9703359W WO9828634A2 WO 1998028634 A2 WO1998028634 A2 WO 1998028634A2 GB 9703359 W GB9703359 W GB 9703359W WO 9828634 A2 WO9828634 A2 WO 9828634A2
Authority
WO
WIPO (PCT)
Prior art keywords
transmitter
transponder
address
receiver
transmitters
Prior art date
Application number
PCT/GB1997/003359
Other languages
French (fr)
Other versions
WO1998028634A3 (en
WO1998028634B1 (en
Inventor
Alan Henry Jones
Andrew Martin Robert Ward
Original Assignee
Olivetti Research Limited
Oracle Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Olivetti Research Limited, Oracle Corporation filed Critical Olivetti Research Limited
Priority to DE69711682T priority Critical patent/DE69711682T2/en
Priority to US09/319,047 priority patent/US6493649B1/en
Priority to AT97947785T priority patent/ATE215701T1/en
Priority to EP97947785A priority patent/EP0943102B1/en
Publication of WO1998028634A2 publication Critical patent/WO1998028634A2/en
Publication of WO1998028634A3 publication Critical patent/WO1998028634A3/en
Publication of WO1998028634B1 publication Critical patent/WO1998028634B1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S11/00Systems for determining distance or velocity not using reflection or reradiation
    • G01S11/16Systems for determining distance or velocity not using reflection or reradiation using difference in transit time between electrical and acoustic signals
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S15/00Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
    • G01S15/87Combinations of sonar systems
    • G01S15/876Combination of several spaced transmitters or receivers of known location for determining the position of a transponder or a reflector
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/18Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using ultrasonic, sonic, or infrasonic waves
    • G01S5/186Determination of attitude
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/18Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using ultrasonic, sonic, or infrasonic waves
    • G01S5/30Determining absolute distances from a plurality of spaced points of known location
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/87Combinations of radar systems, e.g. primary radar and secondary radar
    • G01S13/878Combination of several spaced transmitters or receivers of known location for determining the position of a transponder or a reflector
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S15/00Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
    • G01S15/87Combinations of sonar systems
    • G01S15/872Combination of several systems for attitude determination

Definitions

  • This invention relates to a detection system for determining information concerning the location of obj ects , and which can be extended to determine movement and orientation and even physical parameters such as shape of obj ects in a specified environment .
  • the invention can be applied to people and animals as well as inanimate obj ects such as furniture , machines , vehicles , equipment and the like , and in this connection obj ect is intended to include any movable entity .
  • Location systems which allow the presence or absence of an obj ect in a specified environment (such as a room) to be confirmed or denied, and relative to one or more reference points to identify where in the environment the obj ect is located .
  • EP 0485879 describes a system for locating vehicles in automatic guidance transport systems . Ultrasound is employed as a distance measuring medium whilst an infra-red link allows communication between vehicles .
  • 095/14241 describes a tracking system which enables a spotlight to follow a person on a stage carrying a transponder . Again infra-red signals are used to instigate ultrasonic transmissions to determine the position of the transponder and therefore the person . The spotlight is moved accordingly.
  • EP 0591899 describes another spotlight controlling system for tracking a moving target (actor on a stage) carrying a transponder .
  • radio transmissions establish the communication link and ultrasound transmissions are employed to determine distance and position .
  • a system embodying the invention enables the position of each of a plurality of labelled obj ects in a specified environment to be determined by determining the transit time of slowly propagating energy transmitted from a transmitter on each labelled obj ect , to a plurality of receivers positioned at f ixed points in or around the specified environment , and computing therefrom the actual distance of the transmitter from the receivers , wherein the transmission of the slowly propagating energy is initiated by a burst of high speed propagating energy from a master transmitter located so as to cause transmitted bursts of such high speed energy to enter the said environment , and the transmitter is associated with a receiver adapted to respond to an appropriately encoded burst of such high speed energy, to thereby initiate a burst of slowly propagating energy therefrom, (each said transmitter/receiver combination being referred to as a transponder) and in order to allow the system to adapt to dif ferent numbers of transponders and differing demands for service (
  • each of the said plural ity of receivers is adapted also to be responsive to said burst of high speed energy , so as to identify the beginning of a window of time within which a slow speed energy burst may arise and be received thereby .
  • the burst may be the same burst as is sent to trigger one of the transmitter/receiver units transponders to transmit a slowly propagating wave , for time measurement .
  • the said plural ity of receivers may be connected by a network of cables and the reset signals and the polling of the time values may be achieved via the network .
  • the receivers include a latch to retain information about the time at which the beginning of a burst of slow speed energy is received after the beginning of each said time window .
  • the receivers are scanned (ie polled) so as to recover the time information and reset the latches .
  • Preferably computing means is provided to associate the time information with the receiver from which the times have been obtained, and generate a transmit time for each receiver .
  • the computing means is programmed to convert the transit time into distance values and using position data relating to the receivers stored in a memory, to compute therefrom the position of the obj ect mounted transponder from each of the receivers , and therefore , by geometry its position relative to one or more fixed points defining the specified environment .
  • the slow speed signals are acoustic or ultrasonic signals and the high speed s ignals are electric currents or voltage or visible or invisible electromagnetic radiation such as IR, UV or radio signals .
  • Encoding of the high speed s ignals may be by way of frequency or amplitude or phase modulation or pulse coding or any combination thereof.
  • Such systems are based on the principle of location by multilateration. For each object that is to be located, the straight-line distances are measured from a point on that object to a number of other points in the environment whose positions (in some frame of reference) are already known. Given enough distances, and a suitable geometry of the endpoints between which they are measured, it is possible to derive a position for the object.
  • transmitters and receivers are placed on them and measurements are made of the times of signal pulses being generated and received.
  • the system can be used to measure round trip delays, or alternatively can give the difference in the one-way delays for signal pulses sent simultaneously (or with known time offsets) . If the one-way delay in two media are dt : and dt 2 , then
  • a radio pulse for example, can be treated as if its travel time is zero (i.e. independent of range) , and it can thus simply be used as a trigger signal.
  • the flight times of the slow signal pulses e.g. ultrasonic pulses
  • the slow signal pulses can be accurately measured by synchronising the transmitter and receiver units, as by a timing pulse generated by a suitable controller.
  • Reflections from other objects in the transmitter's environment may cause multiple signals to arrive at a receiver. Any direct -path signal from the transmitter to the receiver should arrive before these reflections, so that in general all pulses arriving at a receiver after ' the first one should be ignored. For this reason, it is important that the width of the pulse sent by the transmitter is as short as possible, so that the direct-path and reflected signals may be identified optimally.
  • the system is programmed to attempt to derive a position of the transponder.
  • the f irst pulse detected by a receiver is a reflected or di f fracted signal . (This may occur, for example , if the direct signal path is obstructed) . In this case , the computed distance will be greater than the true distance , and errors would be introduced into the position for the transmitter that is reported by the system if that incorrect distance is used in the position calculation . In general the computed distances would not identify a unique point (or more generally smal l volume) . If this occurs the erroneous computed value has to be identified and eliminated .
  • Reflected and diffracted signals that arrive at receivers can sometimes be distinguished from direct path signals by inspection of the received pulse shape , and thereby inaccurate measurement eliminated .
  • One way of doing this is to compare the distances reported by all pairs of receivers that have detected a slow speed signal . It can be shown geometrically that the difference of the measured distances from two receivers to a transponder transmitter cannot be greater than the straight - line distance between the two receivers , if the measured distances are accurate . Thus , if a pair of receivers is found for which the measured distances to the transponder transmitter do not satisfy this criterion , the receiver that has reported the longer distance can be excluded from further consideration , since reflections and refractions in general will tend to produce longer distance values than the true straight - l ine distance . Distance computation and pos it ion f ixing
  • the system may be adapted to attempt to f it a non- linear regression model to the remaining distances , by performing an iterative regression computation on the data .
  • the system may be programmed to report that it is unable to calculate the position of the transmitter using the available data .
  • studentised residuals are preferably calculated for the distances , and the system preferably determines the variance of the distance data .
  • Reflected signals will tend to produce large value , so that if the variance is below a predefined, acceptable level , the system can be programmed to conclude that all erroneous signals have been identified and eliminated .
  • signals derived from the receiver associated with the distance that has the largest positive studentised residual is assumed to have resulted from at least one reflection and these signals are f irst excluded from cons ideration .
  • the system is programmed to attempt to fit the model again .
  • This procedure involving the deletion of receivers and signals from consideration is repeated as necessary, until the variance of distance data from the remaining detectors is suf ficiently small .
  • the geometry or number, or both of the remaining receivers under consideration is insufficient for a three-dimensional position for the transponder transmitter to be calculated. For example, all the remaining receivers may be in line.
  • the system is adapted to abort the computation and report that insufficient information has been gathered to fix the position of the transmitter at that time.
  • the system may use this information for various purposes, or it may transmit the information to other interested parties.
  • the system Before transmitting a second slow speed signal the system preferably waits for reverberations of the previous distance- measuring pulse to die out before attempting to repeat the above procedures to get another fix for the transponder transmitter position. Obviously, the time the system must wait for this to happen will depend on the characteristics of the transmission medium and the transmitter's environment. This may be determined empirically, or by adaptation such as by self-learning.
  • a detection system for determining information concerning at least the position of an object, using signal pulses respectively of high and slow propagation speeds, comprising at least three fixed, non-collinearly distributed slow speed signal responsive receivers, at least one transponder transmitter unit for transmitting slow speed signal pulses, mounted on the object, means for generating and transmitting high speed signal pulses to synchronise signal pulse transmission from the transponder with the commencement of a reception-sensitive period at a receiver and means for computing signal pulse reception times and correlating differences therein to determine the required information about the position of the object.
  • a separate transmitter is located on each of two or more objects in the specified environment and each transmitter includes a high speed signal responsive receiver adapted to respond to only one of a plurality of high speed signals, and the separate transmitters are triggered in sequence by a transmitter of high speed signals which is adapted to transmit uniquely one of the plurality of possible high speed signal at the beginning of each timeframe.
  • the invention can be adapted to identify and log movements of two or more objects in the same area/space, by mounting a transponder transmitter on each object and providing each transponder with a unique address, so that each transmitter can be triggered in turn and the position of the relevant object determined in a sequence .
  • transponder transmitters It is not only necessary to trigger transponder transmitters uniquely, but also necessary to restrict transmissions from multiple objects so that they do not interfere with each other, by making sure that the transmissions do not overlap in time in the same space.
  • this is arranged by a coordination device which addresses the transmitters, and sends address information to them as part of a regular timing synchronisation signal.
  • the slew speed signal transmitters each with their own high speed signal receiver and unique address, could be placed on the objects to be located, and access to the space in which the distance- measuring pulses are transmitted is divided into discrete timeslots, the duration of each timeslot being the time needed for reverberations of pulses to die- down.
  • the coordinating device is adapted to send out a high speed timing-synchronisation signal (typically a radio signal) which consists of an address and a timing pulse. All the transponders on the objects will receive this signal, and each compares the received address with its own. If the addresses are the same, that transponder one transmits a slow- transmission-speed distance measuring pulse, when the timing pulse is received.
  • a high speed timing-synchronisation signal typically a radio signal
  • the frequency at which addresses are transmitted by the coordinating device may be varied, either during set-up, or based on information obtained from previous addressings.
  • an object which will normally be static and remain for long periods of time in one place can be identified as such, and its address only transmitted infrequently - say once every 5 minutes or once every hour.
  • objects which it is known in advance are likely to move (or be moved) within the space, can be identified as mobile, and their transponder addresses transmitted more frequently - eg once every minute, or every few seconds, or even more often if the system capabilities permit.
  • a memory in the coordinating device may be used to store against each address, an item of information which indicates the frequency of position changes, for that address, detected by the system during some predetermined period of time (which might be minutes, hours or days depending on the environment and the nature of the objects carrying the transmitters).
  • the stored item of information is employed to determine how often each address is broadcast. If the item of information changes in value, indicating an increased or decreased frequency of movements of the address within the space, the coordinating device can respond appropriately and increase or decrease the frequency of transmissions of the address received.
  • the system can also be used to determine the true orientation of an obj ect , by comparing the position of two or more transponder transmitters mounted on the obj ect .
  • I f an obj ect is rigid and stationary (or moving slowly or predictably enough) and a number of transmitting elements are placed at known points on the obj ect , the positions of all the transmitters can be found in three dimensions . Since the fixed spatial relationship between the transmitters on the obj ect is known, as well as their measured positions in three dimensions , it is also possible to determine the orientation of the obj ect .
  • one or more transponder transmitters located thereon will enable the position and orientation of the obj ect to be determined .
  • an obj ect mounted for rotation about a fixed axis and onlv capable of that movement will generally only need one off - axis transmitter to be mounted thereon to allow its rotational position to be computed .
  • I f two spaced apart transmitters are mounted on an obj ect , more information about rotation and position can be determined to advantage .
  • orientation is to be determined efficiently and quickly, it is preferable to cause the two or more transmitters on the obj ect to transmit in succession .
  • the same pattern of addressing is preferably maintained so that changes (caused by movement ) in the actual and/or relative positions of the transmitters will be as small as possible , and the most accurate description of each orientation as wel l as the movement of the obj ect wil l be obtained .
  • a preferred embodiment of the invention comprises a system for determining the position of an obj ect in a specified environment in which the transit time is determined of slowly- propagating measurement energy transmitted from a transmitter on the obj ect to a plurality of receivers positioned at fixed points in or around the specified environment , and in which the distance of the transmitter from each receiver is computed from the times taken for the measurement energy to propagate from the obj ect to some of the receivers , and wherein the slowly propagating measurement energy is initiated by a trigger burst of energy having a higher speed of propagation from a master transmitter which is located so as to transmit trigger bursts into the environment to initiate the measurement energy transmitter on the obj ect of interest , and wherein a plurality of such transmitters are located on different obj ects and/or points of the same obj ect within the environment , and each transmitter of measurement energy is associated with and controlled by signals from a receiver responsive to
  • a coordinating control system for determining the order in which the obj ect mounted transmitter/receiver combinations are to be addressed and triggered by the transmissions from the master transmitter, together with memory means for storing relevant information about the dif ferent combinations with reference to their addresses , by which the order can be determined .
  • the coordinating control system memory means typically stores a unique address for each of the receiver/transmitter combinations , and the control system is programmed to encode the transmissions using the address information so as only to address the transmitters individually .
  • at least one additional item of information (a weighted hierarchy indication for schedule positioning , or "WHISP " ) is stored in a manner which can be associated with each unique address , and the control system is programmed to select from the addresses that of the receiver/transmitter combination next to be polled, using the WHISP values to determine the order of addressing .
  • the coordinating control system may be separate from or form an integral part of the master transmitter .
  • a WHISP may be stored for each unique address , and it is the WHISP which must be changed to adj ust the subsequent addressing of the transponders .
  • a set of standard WHISPS may be stored and an association between each unique address and one of the standard WHISPS is stored for each unique address , so that an appropriate WHISP is linked to each unique address .
  • unique addresses can all be changed to allow for the entry or exit of transponders into and out of the environment , and to alter the manner in which those in the environment will be addressed by the coordinating control system.
  • the WHISP may be a simple logic 1 or 0 to indicate whether the transponder combination is to be addressed or not .
  • the WHIS? may comprise a priority or weighting measure to determine the order or rate at which the transponder is to be addressed.
  • the WHIS? may comprise two items of information, f irstly for example the length of time since the transponder was last addressed (which may be continually updated by clock information) and secondly for example a rate of interrogation figure to be achieved by the system for that transponder .
  • the coordinating control system may compile a list of transponders to be addressed in a sequence by interrogating all of the unique addresses and their related WHISPS and compil ing the order in which they are to be interrogated using the current WHIS? informat ion .
  • the coordinating control system may create a schedule of unique transponder addresses using the WHISP data, and arrange the order of the addresses in the schedule , and therefore the order in which they are to be interrogated .
  • the schedule is then used to determine the encoding of each trigger burst from the master transmitter and the order in which the transponders are thereby interrogated .
  • updating may be performed in two different ways .
  • any changes which are required to be made to WHIS? data may be held over pending the end of the interrogation of the current schedule of addresses , whereupon the WHIS? data is updated prior to the compilation of the next schedule .
  • a change to a WHIS? may be permitted to interrupt the running of a particular schedule if the unique address or addresses associated with that WHIS? is/are still to be interrogated, but is held over to update the WHISP data before the next schedule is compiled if the particular address or addresses has/have already been interrogated in the current schedule .
  • the system may include an emergency override to allow the transponder triggering in accordance with the current schedule to be terminated immediately, and for a new schedule to be immediately compiled, taking account of the WHISP change associated with , or entered with or after, the emergency override instruct ion .
  • An alternative and more flexible approach to scheduling involves merely determining f rom all available data existing j ust before the next trigger transmission s due , the next transponder address which should be interrogated , using a suitable algorithm and high speed processing , and the development and implementation of one particular algorithm for performing this function is set out below .
  • Changes to WHISP data may occur as a result of a lapse of time , the arrival of a particular time or date, or by interaction with an application running on a computer (which may be part of the position determining system, or the coordinating control system, or another computer altogether) , or by the entry of data by an operator for example to indicate that the system should cease its scheduled transponder position determining function and for example seek one particular transponder (which may for example relate to that on a particular person or obj ect believed to be within the environment) .
  • environment related information may be allowed to create an interruption to permit or cause WHISP data to be altered, such as an increase or decrease in temperature, light level , or sound level or the like , either within the environment or within a separately monitored environment , or by transducer originating signals linked for example to the movement of an obj ect either within the environment ; within an adj oining environment ; or for example by the opening of a door communicating between one environment and another .
  • the movement of an obj ect within the monitored environment or an adj oining environment may be detected by means of a movement sensor such as a trembler switch , associated w th the obj ect . I f so a radio or hard- ired communication channel may be required between the sensor and the coordinating control system .
  • WHISP data changes
  • references to changes to WHISP data include changing the WHISP data stored in a unique memory means linked to one of the unique addresses , or changing the association between a transponder address and a plurality of standard WHISPS , depending on whether a separate WHISP is stored for each address , or whether a number of standard WHISPS are stored and associations between them and the different transmitter addresses are stored .
  • the scheduler may be adapted not only to determine the order in which the transponders are to be interrogated but also the rate of interrogation of any one transponder .
  • This may for example be a f ixed rate associated with the particular transponder address , which rate is entered as a second item of information in each WHISP .
  • the second item of information may be an adj ustable rate value , which can be altered in relation to variations in a parameter monitored by a transducer or sensor .
  • the parameter may for example be temperature , light level , sound level or the l ike , or may be a value which can be adj usted by an operator , or in relation for example to a parameter such as the time , or the date .
  • the rate parameter associated with each WHIS? itsel f may be a dynamic variable , whose ins tantaneous value is determined for example by whether a variat ion has occurred in the detected position of a transponder carried by an obj ect .
  • the position (s) of the transponder (s) carried by the object (s) will be substantially- identical each time the system interrogates the relevant transponder (s) .
  • the system can be programmed so as to reduce the frequency at which any one transponder (or group of transponders) is interrogated, down to a relatively low level, thereby reducing the traffic on the system and allowing more time to be available for more frequent interrogation of transponders positioned on objects which are moving, and whose positions therefore are likely to vary from one reading to the next .
  • the system may be programmed to utilise a third item of data within a WHISP, and to increase the tracking, de frequency of interrogation) of a transponder of a first object if a second object having such a third item of information stored as part of its WHISP is perceived by the position determination of the transponder on the second object, to have moved close to the first object.
  • the WHISP of a transponder address of a human being may carry such a third tem of information, so that if the transponder linked to the person concerned is seen by the system to approach an obj ect which is normally stationary and whose transponder would otherwise be interrogated perhaps only once every 5 minutes , the interrogation rate of the transponder associated with the stationary obj ect may be increased in anticipation of the possibility that the person may suddenly move it .
  • a fully dynamic system can be created since it allows the scheduler to alter not only which transponder is to be interrogated but also the rate at which different transponders are to be addressed with complete flexibility, thereby to follow changes and developments in an environment , with little or no delay .
  • the system can therefore be thought of as having very low hysteresis and by including pre-programmed items of information in each WHISP, which can alert the system to the likelihood of changes occurring, so sudden changes in the environment can be followed almost immediately they occur.
  • a location system that uses a set of ultrasound receivers placed at known positions on a ceiling in a room to detect ultrasonic signals from an ultrasound transmitter attached to an obj ect in the room .
  • we may calculate in the three dimensions the position of that obj ect in the room.
  • the a system can be extended to locate more than one ultrasonic transmitter in the room, provided each has a unique address so that they can be triggered separately, typically by serially poll ing the transmitters .
  • a central coordinating device triggers the transmitter, at the same time as a reset signal is sent to the ultrasound receivers, typically over a wired network. Synchronisation between the transmitting and receiving elements of the system is thus achieved.
  • each ultrasonic transmitter is controlled by a radio receiver and is triggered by the transmission of a suitable radio signal into the room.
  • Each- receiver includes a unique address .
  • the radio signal contains one such unique address. Upon receipt of the radio signal, each radio receiver compares the transmitted address with its own, and, if the addresses match, its ultrasonic transmitter is triggered to emit a short pulse of ultrasound.
  • the central coordinating device has to allow for reverberations and reflections of each transmitted pulse to die away (so that the ultrasound receivers detect ultrasound from only one source) before triggering another ultrasonic transmitter.
  • the time needed to allow all such sounds to die away can be of the order of 20ms.
  • Efficient distribution of the timeslots between ultrasonic transmitters to be located is clearly a priority, and this distribution should take account of the different rates at which location information about particular objects is desired.
  • the system might normally monitor transponders carried by people (who move often) at least once each second, whereas it might monitor those attached to desks, filing cabinets or v/orkstat ions (which move infrequently) only once a minute . If , however , a monitored person walks up to a particular workstation , the system may be programmed thereafter to monitor that workstation' s position once a second at least while the person is noted as being in the vicinity, because it is then more likely to be moved .
  • a further constraint on the allocation of ti eslots can arise when members of a group of transponders need to be interrogated in consecutive timeslots . This is advantageous when the positions of the transponders in the group are to be used to determine both the location and orientation of an obj ect , such that any motion of the obj ect between readings can make the derived information inaccurate .
  • Scheduler software , typically in the form of an algorithm for performing this function, will be called a Scheduler.
  • the priority level assigned to each different transponder is called its Location Quali ty of Service (LCcS) .
  • LcS Location Quali ty of Service
  • the LQoS of a transponder may also be changed at any time , and subsequent timeslot allocation needs to take account of any such changes .
  • the Scheduler provided by the present invention is designed to accommodate LQoS changes ; to have the appropriate long term behaviour; to assign timeslots to transponders based on their Location Quality of Service (LQoS ) ; and furthermore to deal with service demands which are greater or less than the system capacity, by scaling excessive requests fairly in the former case , and padding with dummy timeslot assignments in the second . It is also capable of adj usting timeslot assignment to allow a group of transponders to be located consecutively . Scheduler implementation
  • LQoS Location Quality of Service
  • the length of a timeslot is 40ms (ie the system is capable of determining 25 positions per second)
  • Every transponder is also a member of one transponder group, also identified with a 16-bit number (again, identifier 0 is reserved) .
  • the scheduler is a CORBA-based distributed software programme (Object Management Group, The Common Object Request Broker; Architecture and Specification. Revision 1.1, OMG Document Number 91.12.1, December 1991) running on a workstation.
  • LQoS Location Quality of Service
  • LQoS is expressed as an integer representing the desired period of positioning (eg an LQoS of 25 requests one position every 25 timeslots, ie once per second) .
  • the Scheduler is adapted to maintain a scheduling table stored in memory.
  • Each row of the table contains six entries :
  • a 16-bit group identifier for the transponder g 3.
  • the LQoS for the transponder 1
  • a bit called the slotswap bit, b A row in the table is described by an ordered six- type (a,g, l,e, s,b) .
  • a global flag called “excess -demand” (to be described later) and an integer called “las -group” are also maintained by the Scheduler.
  • the scheduling table is empty. A single row (0,0,1,1,0, false) is immediately added. This entry represents a dummy transponder. The excess -demand flag is set to false, and the last-group is set to zero.
  • An operator (user) or software application can contact the Scheduler over its CORBA interface to indicate that the location requests for a transponder group should be added or changed. It should be noted that if two or mere transponders are members of the same transponder group, then their location requests should not be capable of being added or changed separately. Furthermore, the requests involving the dummy transponder address 0 and dummy transponder group ID 0 will be ignored.
  • the user or application passes the following information to the scheduler:
  • the scheduler For each transponder address a lr ....a n , the scheduler then adds or modifies an entry in the scheduling table.
  • the scheduler is then arranged to recalculate the ELQoS for each of the m entries in the table. First, it calculates the total level of LQoS demand, (t) , where t is given by Equation (1) .
  • Equation (2) it updates the ELQoS for each of the n entries in the scheduling table, e x , with a new value e' ⁇ . If t is less than 1, then e'; . is given by Equation (2) .
  • Equation (3) if t is greater than or equal to 1, is given by Equation (3) .
  • a user or application When a user or application contacts the Scheduler over its CORBA interface to indicate that a location request for a transponder should be deleted, it also passes the address of that transponder a., to the Scheduler. (The entry corresponding to transponder address 0 may net be removed) . If the scheduler finds that an entry for that transponder is present in the table, it removes the corresponding row (a r ,g r ,e r , s r ,b_) from the table.
  • the scheduler then updates every other row in the table (a x ,g X ⁇ l x , e x , s x ,b x ) to (a x ,g x , l x ,e x , s' x ,b x ) where the value of S' x is given by Equation (4),
  • n is equal to the number of rows in the table before removal of the location request.
  • the scheduler recalculates the effective rates based on the remaining table entries as described in the previous section.
  • the Scheduler must tell the central coordinating device (across a CORBA interface) the address of the transponder which should be located next. It does this by examining the contents of the, scheduling table and any attempts to update the table are blocked until this examination is complete .
  • the Scheduler steps through each row in the scheduling table. If the last -group register does not contain 0, and the scheduler encounters a row in which the transponder group ID is the same as the contents of the last-group register, and in which the swap-slot bit is false, it sends the transponder address contained in that row to the coordinating device, and sets the swap-slot bit on that row to "true".
  • the lastgroup register is set to g c .
  • the coordinating device is informed of the address a c of the transponder that should be located next (if a c is zero, this indicates that no transponder should be addressed in the next timeslot) .
  • the relative positions of two or more transponders carried by the same obj ect can be checked against their previous known positions to determine whether or not the obj ect has for example been rotated .
  • a set of two or more transponders which are carried by the same obj ect can be identif ied as such with a further item of information in their associated WHISPS , such that the control system will schedule the interrogation of the second and any subsequent transponder addresses of the set of transponders on the obj ect after the first of the pair has beer- interrogated .
  • three transducers are needed to permit the orientation (and any changes in orientation) of an obj ect to be determined .
  • obj ects normal ly constrained to occupy a limited range of positions only two or even one transducer may be suf ficient .
  • the invention also lies in apparatus for performing any of the above methods , and in part icular comprises a master radio transmitter for transmit t ing short duration radio frequency trigger signals into an environment ; a plurality of radio receiver-controlled ultrasound transmitter units ( transponders ) located en movable obj ects throughout the environment ; a plural ity of ultrasonic rece ivers located at f ixed , spaced apart points in the environment and adapted to receive ultrasound signals from transponders in the environment ; a coordinating control system adapted to cause the master radio transmitter to emit appropriately encoded trigger signals to trigger one particular transponder (if present) in the environment , and cause it to emit ultrasonic radiation; and a computer based data processing system receptive of signals from the ultrasound receivers for determining from the transit times associated with those transmissions the apparent line of sight distances of the transponders from at least some of the receivers , and thereby from the geometry of the receivers the apparent position of the obj ect in the
  • further memory means is provided within which is stored data relating to the time at which each transponder address was last interrogated, and the programme running in the processor controlling the said logic means is adapted to compare the information stored in each said further memory means with the WHISP data for all transponder addresses suspected to be in the environment , to determine which of the transponders is next to be interrogated, and to encode the next radio trigger signal accordingly .
  • the different memory means may comprise different parts of one memory device (such as a large random access memory) or may be formed from two or more di f ferent memory devices , at least some of which may be random access memories and others may be programmable read only memories .
  • any acoustic noise sources in the environment which can generate ultrasonic signals similar to these sent by the ultrasound transmitters , have the potential to introduce false position determination .
  • the ultrasonic receiver is rendered sensitive only to sound of a particular frequency, by the use of an ultrasonic detector with a narrow bandwidth around that frequency, and the bandwidth of the sound signal emitted by the transmitter is also limited to a narrow bandwidth around that frequency
  • the system includes a further ultrasonic receiver adapted to simultaneously monitor sound at at least one of a number of different frequencies , and a logic based system determines if a signal detected by a receiver at the unique frequency used by the transmitter is accompanied by other sounds at some or all of the said different frequencies and if not , the detected signal is identified as being TRUE , and if accompanied by other sounds , the detected signal identif ied as being corrupted by noise .
  • noise sources in the environment tend to s imultaneously generate signals at a large number of dif ferent frequencies , so that sounds are detected at the transmit ter frequency and at other frequencies s imul taneously .
  • the detect ion of such a range of sound signal s ( even though it contains a component at the transmitter frequency) has to be ident if ied as either a FALSE sound signal or is as a TRUE signal which has been corrupted by noise , and in either event the s ignal mus t be rej ected .
  • the number of additional f requencies that are monitored is preferably greater than one , and the monitoring may be performed at one or more of a number, of different points m the environment .
  • a plurality of transponders may be attached to the same obj ect .
  • three transponders are attached to a rigid obj ect so that they are not colinear, then by finding the positions of those three transponders not only the position but also the orientation of the obj ect may be deduced (assuming that no movement of the cb ect has occurred between the time at which the measurements were made) .
  • each transponder typically has its own independent radio interface , controlling logic , and one or more ultrasonic transducers .
  • controlling logic controls logic
  • ultrasonic transducers typically be placed on an obj ect .
  • complete physical independence of the transmitters is not required and components of different transmitters can be interconnected using wires and duplication of components which are common to the transponders can be reduced or eliminated .
  • a single radio receiver may be provided together with decoding logic to drive a number of individually addressable ultrasonic transducers .
  • the one receiver will respond to more than one address and hence can be described as a Mul tiple -Address transponder but for each address only one of the ultrasonic transducers would be triggered, corresponding m each case to one of the points on the obj ect .
  • the invention thus -envisages an obj ect having mounted thereon a plurality of ul trasonic transducers located at a corresponding plurality of different non-colinear positions on the object, and a single radio receiver adapted to trigger one or another of the transducers depending en an address code contained within a radio signal received thereby, so that the different transducers may be triggered by appropriately coded radio signals, to transmit ultrasound signals into the environment at specific times, and from the different points on the object, to enable the unique positions of the said points on the object to be determined and enable the orientation of the object to be determined.
  • each transducer as being comprised of a group of two or more similar transducers facing in ⁇ different directions to more uniformly spread the ultrasound around the environment .
  • the basic ultrasonic transmitter incorporates a plurality of ultrasonic transducers which are driven simultaneously to create a pulse of ultrasound from the device .
  • the transducers (which, individually, have a relatively narrow beam angle) are arranged to point indifferent directions so as to generate a generally omnidirectional transmission pattern.
  • the transducers it is possible to arrange the transducers so as to produce a more directional beam, and two advantages follow:
  • the number of transducers required can be reduced. This is especially relevant if a transmitter is to be placed on ar. ultrasonically opaque ob ct in such a way that if an omnidirectional signal were to be generated by the device a known fraction of the omnidirectional signal would be absorbed. A directional beam extending over the area not absorbed by the opaque object ca ' n therefore be generated using fewer transducers than would have been required to generate the omnidirectional signal, but the ultrasound signal issuing from the object will appear to be the same, as if an omnidirectional source had been employed.
  • the orientation of an object may be determined by identifying the positions in the environment at which receivers are located which receive signals from a transducer on the object.
  • directional transducer on the front of a computer monitor may be sufficient to enable the direction in which the screen is facing to be determined, by mapping which of the receivers in the environment "hear" the transmitted ultrasound.
  • the transponders are made aware of the fixed interval which is to occur between addressing messages and power saving is achieved by turning off the radio interface after a message is received and switching it on just before the next one is due.
  • Further power saving may be achieved if the frequency with which a particular receiver- transmitter will be addressed by the coordinating device is known. If the coordinating device is programmed so as to be aware that the transponder will not be addressed for some amount of time, it ca encode that time in the radio message , and after decoding the message the transponder will be able to switch of f its radio interface for that amount of time .
  • the power saving is particularlv efficient if a transmitter is made to " sleep " for a long time , as would be the case if the transponder is being used to track, an item of office equipment such as a printer, which is not expected to move very often .
  • the scheme described above can be extended to allow sleeping transponders to be woken up at short notice .
  • the transponders can be configured so that they turn on their radio interfaces once a second, at a time when a message is due , and decode that message ( therefore using 1/50 of the power which would have been used if they had decoded each message) .
  • a data bit at the start of each message indicates that the coordinating device wishes to wake up all sleeping transponders or a set of sleeping transmitters (say, all those with even addresses) .
  • the " sleeping" transponder can be grasped and woken up accordingly by transmitting an appropriate code , within the capability of the bits . If a sleeping transponder receives such a message , and if that message is applicable to it , it will wake up , and from that time on check every addressing message from the coordinating device , until such- time that it is instructed to go to sleep again . With this method, much of the power- saving advantage of sleeping can be retained, and yet it can quickly trigger a transponder so as to be able to determine its location . Thus in the case of the printer described above , if a person walked up to the printer, it is likely that they might move the printer, and in which event it may need to start tracking it immediately, even if it was currently " sleeping " to save power .
  • a transponder does not receive an addressing message at a time when one is expected, then it can be programmed to go into sleep mode for a predetermined period (perhaps one minute) , before turning the radio channel on again for sufficient time to detect whether it is in range of the coordinating device again. For example , if the coordinating device was sending out an addressing message every 1/50 second, then a sleeping transmitter must wake for 1/50 second to determine if it is in range of that coordinating device .
  • the radio interface would use only 1/300 of the power it would otherwise use . This is achieved at the expense of up to a one minute delay before a transponder' s position can be determined after it is back in range of the coordinating device .
  • a bidirectional radio link is provided between a remote receiver and each transponder .
  • this is achieved by adding a radio transmitter to each transponder and adding a radio receiver to the master transmitter .
  • Such transponders will be referred to as bi directional transponders .
  • the coordinating device may for example transmit the radio receiver addresses in sequence of all possible bi-directional transponders , at regular intervals .
  • the bi-directional transponder radio responses may be checked for radio responses from any new transponder addresses , and these addresses may then be added to the list of bi -directional transponder addresses which are to be scheduled, for position determination by subsequently triggering by radio their bi directional transponder so as to generate ultrasound signals .
  • a " Slotted ALOHA contention- resolution protocol" such as described by Roberts L in ALOHA Packet Systems With and Without Slots and Capture , Computer Communications Review, April 1975 , may be used to allow the transponder to identify its unique identification ( ID) to the coordinating device and establish its position in the schedule for the master transmitter .
  • This type of protocol is a probabilistic protocol which allows many transmitting and receiving devices to use the same radio channel to transmit at the same time . This allows a plurality of transponders to use the same radio channel to communicate with the coordinators and enter their ID' S into the schedule to be used by the master transmitter .
  • the contention-resolution protocol is performed until an indication is received from the master transmitter and/or its associated coordinator that location resources have been allocated to the new ID for that transponder transmitter .
  • This indication may be sent as part of the addressing message .
  • the indication may simply be a command to transmit or a separate acknowledgement f ield .
  • the transponder ' s unique radio receiver ID may be encoded in the message to show that the master transmitter and/or coordinator is aware of its presence .
  • registration may also be used in resource retrieval to prevent valuable resources being used unnecessaril .
  • the coordinating device may be programmed to reallocate the location resources that were are being used to track that device .
  • the coordinating device may be programmed to set a " transmit " bit in the radio addressing message the next time it is transmitted by the master transmitter, so as to force a registration from the addressed transponder transmitter, whilst blocking registration attempts from any other bi-directional transponders .
  • the related obj ect mounted transponder is still in range of the master radio transmitter , and the absence of an ultrasound response either lies in a temporary shielding of the transponder or an electrical failure , (as opposed to movement of the obj ect ) , and the resource should not be reclaimed .
  • the transponder may have been temporarily shadowed by ul trasound absorbing material .
  • the coordinating device may be programmed to set a special drop bit in the addressing message , to indicate that the location resources that are currently allocated to that transponder will be reclaimed, and the transponder concerned will not subsequently be addressed via the master transmitter radio link .
  • the transponder radio receiver If the transponder radio receiver can receive this message , it must be in a location where it can receive radio signals from the master radio transmitter but the coordinator is unaware of its ultrasonic response . In this event the bi-directional transducer is programmed to perform the registration process described above , but in the meantime the coordinating device reclaims the now unused location resource associated with that ID, until such time as the transducer achieves registration .
  • each addressing message contains one or more sets of error- correcting or error-detecting bits in combination with a powerful checking algorithm (e . g . CRC Check) .
  • a powerful checking algorithm e . g . CRC Check
  • a transponder receives a message containing errors , it is programmed to assume that the message was destined for it , and that the drop bit was set , so that if a transponder receives such a message , it will immediately begin the registration- process .
  • either the overall device or all of the regional coordinating devices may be programmed to remember the ID' S of any bi -directional transponders which have dropped out , and this fact may be compared with a look up table of data, indicating whether or not an alarm is to be raised and/or the absence noted in a display . For example in the case of an ID associated with a valuable piece of apparatus , a burglar alarm may be sounded, and exit down remotely locked .
  • the overall coordinator may likewise be programmed to raise an alarm, bar access or exit , and/or display this in a display.
  • input and output facilities may be provided on the transponders .
  • a radio message from a coordinating device may contain a number of data bits (an "Output Data Value " ) which may, for example , be sent to an output port on the addressed transponder, to control for example a display, or robotic device associated with that transponder .
  • Figure 1 is a schematic diagram of a positioning system
  • Figure 2 shows the FPGA conf iguration of the transmitter unit
  • Figure 3 s a schematic diagram of a mobile transmitter unit for the system of Figure 1 ;
  • Figure 4 shows the FPGA configuration of the mobile transmitter unit on the system of Figure 3 ;
  • FIG. 5 is a simplified block schematic of the ultrasonic receiver unit ;
  • Figures 6A to 6C show how a standard ultrasonic receiver, such as shown in Figure 5 , operates as part of a transponder in the system of Figure 1 ;
  • Figure 7A to 7D show the operation of a modified ultrasound receiver, adapted to render it insensitive to spurious noise signals , in the system of Figure 1 ;
  • Figure 8 is a more details block schematic diagram of the ultrasound receiver such as shown in Figure 5 ;
  • Figure 9 shows how two transponders each incorporating standard ultrasound receivers can be mounted on a movable obj ect such as a chair to indicate rotational movement ;
  • Figure 10 shows how component redundancy in a two transponder arrangement such as shown in Figure 9 , can be reduced
  • Figure 11 is a detailed block schematic of the single more complex receiver unit provided in the system of Figure 10 ;
  • Figures 12A and 12B are top (or bottom) and side view of ar. omnidirectional ultrasound source ;
  • Figure 13 illustrates a more directional ultrasound source
  • Figures 14A and 14B are top and side views of a transponder unit designed to be worn round the neck;
  • Figure 14C is a view from above showing the directionality of the device shown in Figures 14A and 14B ;
  • Figure 15 is a view from above of the sound pattern which emanates from an omnidirectional ultrasound transducer (or transducer group) when attached to or partly obscured by an obj ect which is of acoustically opaque and/or absorbing material ;
  • Figure 16 is a side view of a person wearing a device such as shown in Figures 14A and 14B ;
  • Figure 17 is a top view of the person shown in Figure 16 ;
  • Figure 18 is a block schematic overview of a complete system incorporating the invention and also including a bi-directional radio link between the master transmitter unit and each of the addressed transponders ;
  • Figure 19 is a detailed block schematic of the clock generator in Figure 18 ;
  • Figure 20 is a detailed block schematic of a zone manager of Figure 18 ;
  • Figure 21 is a detailed block schematic of a matrix manager of Figure 18 ;
  • Figure 22 is a detailed block schematic of an ultrasound receiver such as is incorporated in each room of the system of Figure 13 ;
  • FIG 23 is a detailed block schematic of a mobile transponder unit such as is mounted en obj ects in the rooms in the system of Figure 18 . Overview of the drawings
  • a set of ultrasonic receiving elements are placed in a matrix on the ceil ing of rooms in which the system is installed, and ultrasonic transmitters are placed on the obj ects to be located .
  • An addressable radio link is used to allocate timeslots , transmit the synchronising timing pulse , and allow transmitting elements to communicate with a coordinating device , eg to register an initial presence .
  • Waves are used because their speed of propagation is very fast , and unknown delays in the radio link will be very small compared to the time -of - flight of , for example , ultrasonic pulses used to measure distances so that to a first approximation the measurements can be said to be synchronised, and the unknown errors will not significantly reduce the accuracy of the system .
  • a wired network may be used between the fixed receiving elements to distribute a timing pulse . This has the advantage of being less prone to interference , and potentially of lower cost .
  • At least three receivers must detect valid signals for the system to be able to calculate the position of the transmitter , but if all the receiving elements are coplanar, there can be ambiguity about whether a transmitter is above or below the plane containing the detector - eg the ceiling of a room . This ambiguity can be resolved if it is known for example that all transmitters are always below the ceil ing .
  • the information gathered by this system can be used to automate computing and communicat ions equipment in an intelligent manner .
  • By locating the pos ition of people and equipment for example in an off ice , hotel , hospital facility or home environment it is possible for example to route phone calls , dispatch a printing j ob to the nearest printer, automatically identify the nearest visible screen to a user (for display o f information requested by them) , and intelligently select camera views in videophone conversations .
  • Availability of fine-grain high resolution location information can allow new methods of human- computer interaction, e . g . connection of video and audio streams by bringing their endpoints into close physical proximity.
  • a transmitting unit as an input device , e . g . as a wireless mouse , a 3D pointer, or for three- dimensional gesture generation .
  • a PC 12 loads an 8 -bit address of the mobile device onto its parallel port .
  • a transmitter controller based around a Xilinx XC3020A FPGA (the FPGA configuration is shown in Figure 2 ) and interfaced to the PC parallel port , reads this address f ive times a second, and generates a 40KHz data stream comprising a preamble and the address from the parallel bus of the PC .
  • the 40 KHz data stream is FM encoded onto a 418MHz radio link by a Radiometrix BIM413 radio module 16.
  • a signal from that controller commands an ADC 13 (HP E1413/A) to begin sampling at a rate of lOOKHz ( shared between all channels being sampled) .
  • Mobile devices such as 10 described in detail in later Figures of the drawings located in the area covered by the system, pick up the preamble and 8 -bit address and compare the address with their own . If the addresses match, the mobile device in question transmits a 750 microsecond pulse of 40KHz ultrasound. Typically an array of five transducers is mounted on each device, typically in a hemispherical pattern (not shown) .
  • the ultrasonic pulse is picked up by one or more ultrasonic receiver units of which four are shown at 20 , 22 , 24 and 26 . Those receiving the pulse process the signal in a manner described later before passing the processed signal to the ADC 18 , which is set to sample them when instructed.
  • the ADC continues to sample at lO OKHz for 20 milliseconds and the samples values are stored .
  • the stored sample values are passed over a serial interface to the PC 12 .
  • K? Vee software is loaded into the PC to manage the sampled data, find signal peaks , determine transmitter-receiver distances , and calculate and position relative to the receivers of the mobile device that was addressed, using the algorithms described herein before .
  • the FPGA configuration of the transmitter controller of Figure 1 is detailed in Figure 2 .
  • the operation of a mobile radio transmitter is as follows : 1.
  • the Xilinx XC3020ATPGA unit 23 downloads its configuration from a Xilinx 1736PC serial PROM 30 (the FPGA configuration is shown in Figure 4) .
  • a PIC16C54 microcontroller 32 enables a Radiometrix BIM413 radio module 34 and a 4MHz Xilinx clock 36 (built around a 4MHz crystal and a 74HCT00 1C) .
  • the XC3020A unit 28 monitors incoming 40KHz received data until it detects a preamble and 8 -bit address. It then compares the received address with its own (stored in its serial PRCM) , and if the addresses are identical it drives five ultrasonic transducers such as (Farnell Electronics part No. 213-214) at 40KHz for 750 microseconds (of which one is shown at 38) .
  • five ultrasonic transducers such as (Farnell Electronics part No. 213-214) at 40KHz for 750 microseconds (of which one is shown at 38) .
  • the PIC16C54 microprocessor 32 then disables the BIM418 radio module 34 and 4MHz clock 36, and places the XC3020A unit 28 into pcwerdown mode, to save power, for 0.196 seconds. It then re-enables these components and step (2) is followed again.
  • Power is typically derived from two 3.6V half-AA lithium, thionyl chloride batteries, regulated to 5V by an LT1129 IC.
  • the ultrasonic signal is detected by an ultrasonic transducer such as a Farnell Electronics part No. 213-226 denoted by 40.
  • This signal is amplified (typically by a factor of 56) using an inverting amplifier 42. Typically this is built around one-quarter of a TL074 quad op-amp. 3 .
  • the amplified signal is rectified using a full wave a ct iv e rectifier 44 . Typically this is built around one-hal f o f a TL074 quad op-amp .
  • the rectified, amplified signal is smoothed using a n RC circuit 46 to obtain a signal which represents the envelope of a rectified version of the original signal .
  • This signal is passed to the HP E1413/A ADC 18 (see F igure 1) via an RJ45 j ack plug and one wire of a four wire network, which also supplies the unit with +5V, -5V and GND power lines .
  • a number of these are located at known locations around the environment (room) in the ultrasonic positioning system.
  • each receiver 47 is triggered by a central controller 48 across a network 50 .
  • the receiver monitors signals from a 40KHz ultrasonic detector 52 for 20ms as depicted in Figure 6 (B) , and the time at which the incoming signal peaked for the first time is determined and held in the receiver .
  • the central controller 48 polls each receiver across the network 50 as depicted at 54 and 56 in Figure 6 (C) , and retrieves the time value .
  • the value from each receiver is either the time after the window opened at which the signal first peaked, or is zero (which indicates that no useful signal was detected) .
  • a two channels and two ultrasonic detector are provided as shown in Figure 7 .
  • both channels are reset and monitor the incoming signals for 20ms , and determine the times (a, b) at which any received signals peak for the first time as shown in Figure 7 (B) .
  • the value b is checked and if greater than 0, the value of a is forced to 0, also , as shown in Figure 7 (C) . If b equals 0 , the value of a is available to be returned to the central controller .
  • a standard receiver- transmitter (transponder) unit 68 (such as item 10 in Figure 1) is shown in Figure 8 .
  • This comprises a radio receiver ( 1 ) which picks up encoded FM signals in the 418MHz band from a radio transmitter ( 16 in Figure 1) controlled by a central coordinating device 48 (not shown) .
  • decoding logic 72 which presents the address contained in any decoded message , to an address comparator 74 . If the latter identif es the address in the message as that of the transponder stored in ROM 76 , t triggers a signal generator 73 , which drives a set of ultrasonic transducers 30 to transmit an ultrasonic pulse .
  • Two such standard transponders 32 , 84 are shown in Figure 9 attached to two spaced apart points on a chair 86 . Since the two transponders 82, 84 contain similar duplicated components, an alternative arrangement is possible as shown in Figure 10. Here, a single receiver and control unit 83 drives two individually addressable ultrasonic transducer sets, mounted at the same points on the chair 86, 90, 92 as were the standard transponders 82, 84.
  • the unit 88 is made up of a radio receiver 94 which picks up the encoded FM signals in the 418MHz band from the central transmitter. These signals are passed through decoding logic 96, which presents the address contained in any message detected to an address comparator 98.
  • the latter is associated with a lock-up table 100 containing in this case two rows 102, 104. Each row stores a transducer address and a port number (e.g. If transducer set 1 is attached to port 1, one of the rows will be the ordered pair (1,1) ) .
  • the address comparator identifies that the address in a received radio message matches one of the transducer addresses in the look-up table 100 it triggers a signal generator 106.
  • the address comparator also controls gates 108, 100, to direct the output of the signal generator 106 to the port identified by the port number in the received transducer address. It can be seen therefore that the number of radio receivers, decoders, comparators and signal generators required by a system where two or more ultrasonic transmitter transducers are to be mounted as single objects, can be reduced, with consequent economies .
  • Two groups of ultrasonic transducers 112, 114 are connected separately one to port 1 (controlled by gate 103) and the other to port 2 controlled by gate 110.
  • FIGS 12A and 12B A less directional transducer is shown in Figures 12A and 12B . This comprises a spherical body 116 from which protrude a plurality of regularly spaced transducers , one of which is shown at 118 in each of the views .
  • the device 120 is shown mounted on a housing 124 which may contain electronic components making up the transponder . Less than half the number of transducers are required than in an omnidirectional source such as shown in Figures 12A, 12B .
  • Figure 14A shows a transponder 126 capable of being worn by a person around their neck for example on a chain 128 .
  • the ultrasonic transducers 130 can be arranged to give a relatively narrow beam 132 which will proj ect in front of the person 134 .
  • the obj ects on which transponders omnidirectional (standard) are attached are opaque or relatively opaque to ultrasound, it is possible to obtain information about the orientation of those obj ect s from the data collected by the receivers such as 20 , 22 etc in Figure 1 .
  • a transponder 136 attached to a known point 133 on such an obj ect 140 as in Figure 15 .
  • the opacity of the obj ect 140 ensures that the only sound energy 142 which can leave its vicinity does so in the direction 144 . This effect may be amplif ied i f the transmitter is itself directional to some degree.
  • the location system can calculate in three dimensions the position (x,y,z) of the transponder 136.
  • the location system also knows the positions (u ⁇ v ⁇ ... (u n ,v n ,w n ) of the n receivers that have detected the ultrasonic signal.
  • the direction, relative to the object, in which the ultrasonic energy will have left its vicinity can be deduced. Correlating these three items of information allows the object's orientation to be determined, where the position of point 138 relative to the object 140 is known.
  • the person 146 is wearing a transponder 152 on a chain around his neck.
  • the sound energy is directed in front of the person, with the middle of the beam lying in the same vertical plane as the direction in which they are facing.
  • Figure 18 shows the person from above and the area in the horizontal plane over which sound energy will be radiated from the ultrasonic transducers on the transponder 152.
  • the vector (a,b,c) is computed from the transponder to the mean point.
  • the vector a, b, c is computed using Equations 18, (9) and (10) .
  • the vector (a, b, 0 ) usually can be taken to be a good estimate of the horizontal direction- of the middle of the sound beam leaving the obj ect ' s vicinity, and can be used to calculate the direction A, in which the person is orientated around a vertical axis (relative to some other horizontal direction specified by a vector (m, n, 0 ) .
  • the value of A in the range C --rr, ⁇ r] can be computed from the values of sinA and cosA given by Equations (11) and (12 ) .
  • the value of A can be used as an estimate of the direction in which the person is facing .
  • FIGS. 13 to 23 illustrate a position detection system embodying the invention and the separate parts making up the system.
  • FIG 18 is a block schematic diagram of the complete system in which a Scheduling PC 154 dictates which one of a set of Mobile Transponders (one of which is shown at 156) are to be addressed in each of 25 timeslots per second. Addressing messages generated by the Scheduling PC are sent to Mobile Transponders via a Zone Manager 158 , which also passes registration messages from the Mobile Transponders 156 back to the Scheduling PC .
  • Ultrasonic signals generated by the addressed Mobile Transponders 156 in response to the addressing messages sent by the Zone Manager are detected by a set of Receivers three of which are shown at 160 , 162 , 164 attached to a Matrix Manager 165.
  • a Matrix Manager 165 there will be one Matrix Manager and a set of Receivers per room (or other space in which ultrasound is confined) .
  • a Positioning PC 163 connected to the Matrix Manager 166 derives the air temperature of the ' room in which the polle d receivers are located via a thermometer 170 , and polls the Receivers 160 , 162 etc to retrieve the three measurements derived from the received ultrasonic signals , and uses this data, and the measurement of air temperature in the room 172 , to calculate the 3D position of the source of the ultrasonic signals .
  • a second set of receivers ( 174 , 176 , 178) in a second rom 1 80 are also shown, with associated matrix manager 182 an d positioning PC 184 .
  • Other similar set -ups can be provided for each room in a building, each linked to a central area manager 186.
  • Radio signals are transmitted to the mobile transponder radio receivers from a master radio transmitter/receiver unit 189 operating at 418 MHz with FM encoding .
  • the Clock Generator 183 sends an accurate 25Hz clock pulse and global time value to the Zone Manager and the Matrix Managers across a serial network .
  • the generator has a 25Hz 192 clock which drives a time store and counter 194 .
  • the time store holds the current global t ime value , and the counter increments it with every pulse .
  • An initial global time value may be loaded from a the PC 190 connected to the Clock Generator (see Figure 18 ) . After incrementing the current global time value, that valu e , and the clock pulse are gated to a serial network interfac e 196 , which distributes these signals to other system components , so as to synchronise them .
  • Each Zone Manager ( 158 , 166 , 182 etc in Figure 18 ) handles the radio interface between the Scheduling PC and the Mobile Transmitters . As shown in Figure 20 , it has a Data Store 19 8 which is filled by the Scheduling PC with the next packet to be transmitted . When this process is complete , the Zone Manager unasserts the "Ready" status line . On receipt of a clock pulse from the synchronisation network (200 ) along 202 , the Zone Manager stores the associated time in a Time Store , 204 , and triggers a Message Generator 206.
  • the Message Generator sends a 136 -bit preamble followed by a Manchester- encoded copy of the stored packet at 40kbps to the transmit side of a 418MKz FM Radio Transceiver 208 , thus sending a DC- balanced copy of the desired message to the Mobile Transmitters .
  • the Zone Manager After sending the message , the Zone Manager triggers a Message Decoder 210 , which looks at the incoming signals picked up by the receive side of the Transceiver 208 . Any incoming radio message sent by the radio transmitting section of the Mobile Transponder is decoded and error- checked, and if the message is valid it is stored in a Message Store 212 .
  • the Zone Manager When time has been allowed for the outgoing message to be sent and any incoming messages to be detected, the Zone Manager asserts the "Ready" status l ine , indicating that the Scheduling PC can review the stored time and any stored message . To this end the scheduling PC controls Data Path Switch 214 to supply trigger tune ( from 204 ) and/or message ( from store 212 ) as appropriate , before loading the next packet to be transmitted .
  • the global clock synchronisation network signals pass unchanged through the Zone Manager.
  • the Scheduling PC 154 ( Figure 18) is programmed to determine the order in which Mobile Transmitters should be addressed based on the Location Qualities of Service (LQoS) assigned to them (either statically, or dynamically by users and applications) .
  • the Scheduling PC also constructs the packets to be sent to Mobile Transponders (via the Zone Managers) , and performs resource reclamation.
  • LQoS Location Qualities of Service
  • the Scheduling PC determines whether an application requires that an "Output Data Value" should be sent to that transmitter. It also determines whether applications have indicated that the transmitter is no longer responding to addressing messages (perhaps because it has been removed from the range of all the receivers in the room or building in the case of a multi- zone system) . If so, the transmit or drop bits in the next message should be set, to check the situation, or reclaim resources (as described above) .
  • the Scheduling PC also determines whether any Mobile Transmitters should be woken prematurely from a sleeping state, in which case the wake bit should be set. It also can acknowledge that a mobile transponder has beer, registered with the system whether this has been done by an operator, or an application according to data/time or data forcing the system to look for a particular mobile transponder address or has been achieved automatically. Two values, s (the score) and e (the Effective Location Quality of Service) associated with the Mobile Transponder to be addressed, and maintained by the scheduling algorithm, can be used to estimate a time for which that Mobile Transponder may go to sleep. It can be shown that, assuming the LQoS demands managed by the system do not change, the Mobile Transmitter will not be addressed in at least the next s t timeslots, given by Equation (13) .
  • a message packet is then constructed from the collected information.
  • the packet has a number of Cyclic Redundancy Check (CRC) error checking codes embedded within it (the standard CRC-8 code is used) , and its format is given in Table (A) .
  • CRC Cyclic Redundancy Check
  • the Output Data Value field is set to 255. Similarly if no Mobile Transponder registrations require acknowledgement, the Registration Acknowledgement field is set to zero.
  • the message packet is loaded into the Zone Manager's Data Store in 8-bit chunks. After the last chunk is loaded, the
  • Scheduling PC start to continuously poll the Zone Manager's "Ready" status line. This line is asserted when the Zone Manager has transmitted any stored message where the radio receiver section of the transceiver 208 is being employed.
  • the Scheduling PC retrieves (from the Zone Manager) the time at which the transmission was made, and sends an event of the form (identifier, time) to the Area Manager across a CORBA interface (Object Management Group, The Common Object Request Broker; Architecture and Specification. Revision 1.1, OMG Document Number 91.12.1, December 1991), indicating the 16-bit identifier of the addressed Mobile Transmitter and the time of addressing.
  • CORBA interface Object Management Group, The Common Object Request Broker; Architecture and Specification. Revision 1.1, OMG Document Number 91.12.1, December 1991
  • the Scheduling PC retrieves from the Zone Manager any incoming message sent by the radio transmitter of the address Mobile Transponder (where - f itted and utilised) . Any such message will contain an address and button status bits .
  • the Scheduling PC must deal with any registration request detected in this way, and/or inform any applications which are interested in "Button Pressed" events from Mobile Transponders .
  • the Matrix Manager shown in Figure 21 resets ultrasound Receivers (eg 20 , 22 etc in Figure 1) connected to it , at a precise time, and acts as an interface between the Positioning PC and those Receivers .
  • the Matrix Manager On receipt of a clockmodule along line 216 from the synchronisation network 200 , the Matrix Manager stores the associated time in a Time Store 218 , limits for 9 . 65ms to allow the radio message to be sent and sends a "Reset " signal over its Downstream Network Interface 220 to the ultrasound Receivers connected to it . After 20ms , the Matrix Manager asserts the "Results Ready” status line , which indicates to the Positioning PC that the Receivers will have made their measurements , and that the Positioning PC can now use the "Outgoing Data" bus to poll those Receivers to determine the results .
  • the Positioning PC can also retrieve the time at which the Receivers made their measurements by recovering the time held in the Time Store 218 .
  • I t can also retrieve the latest measurement of the temperature in the room measured by a temperature sensor 222 , the output of which is continually digitised by ADC 224 and stored in memory 225 for retrieval for example when the Receivers are reset .
  • the Positioning PC can also send commands to the ultrasound Receivers through the " Outgoing Data " bus to change the peak detection algorithm or thresholds used by the ul trasound Receivers .
  • the Matrix Manager When the Positioning PC asserts the " PC Ready” status line to indicate that it has performed all necessary actions associated with the current measurements , the Matrix Manager unasserts the "Result Ready” status line and prepares itself for the next clock pulse .
  • Data from the radio link ( if utilised) between transceiver 208 and the mobile transponders is received via the upstream Network Interface 228 and transferred when instructed to a Data Path Selector switch 230 ( Figure 20 ) together with the digital temperature value from 226 .
  • the global clock synchroni zation network signals pass unchanged through each Matrix Manager in turn .
  • the Receiver shown in Figure 22 detects ultrasonic signals from the transducer on the Mobile Transponders , and converts them to electric signals and processes those signals to determine the time at which the received acoustic signal peaked for the first time .
  • Receivers are connected in a serial daisy-chain to a Matrix Manager by two networks - an upstream network, 232 which carries information to the Matrix Manager , and a downstream network 234 which carries information from the Matrix Manager .
  • Each Receiver has an address which is unique amongst those connected to the same Matrix Manager , allowing it to be polled by the Posit ioning PC also connected to that Matrix Manager .
  • the addres s may be coded for example by setting switches 235 on the ?C3s of the Receivers .
  • a Receiver When a Receiver detects a " Reset " signal condit ion on the downstream network 234 , it resets an on-board counter 236 and peak detection circuit 238 . For the next 20ms , the counter is updated at a frequency of 20kHz , and the peak detection circuit monitors a signal from a 40kHz ultrasonic transducer which has been amplified in 242 , rect if ied in 244 , smoothed in 246 and digitized in 248 .
  • the value 0 is formed in the counter .
  • the Receiver may be polled by the Positioning PC via the Matrix Manager and the downstream network 234 . If an address comparator 250 in the Receiver links to the switch coded address 235 detects that the Receiver is being polled, the stored value in the counter is sent back to the Positioning PC via the upstream network 232 and Matrix Manager, together with error- checking information . Incoming information from other Receivers on the upstream network is blocked during this period .
  • Additional lines on the downstream network 234 can be used by the Positioning PC to change the peak detection algorithm used by the Receiver .
  • Two algorithms may be used :
  • the threshold source may be a bank of switches 252 on the Receiver PCB, or a Threshold Memory 254 .
  • the threshold source may, again, be changed by the Positioning PC by using lines on the downstream network .
  • the Positioning ?C sets the poll address on the downstream network to the new value , and then asserts further lines such that each of the Receivers load the poll address value into a Temporary Threshold Memory 256.
  • the Positioning PC sets the poll address on the downstream network to the address of the Receiver whose threshold must be altered, and asserts further downstream network lines to transfer the value from the Temporary Threshold Memory 252 into the Threshold Memory 254 of the appropriate Receiver .
  • the Mobile Transponder shown in Figure 23 can be attached to obj ects , and generates ultrasonic signals 253 by which its position and possibly orientation can be determined .
  • Incoming radio messages from a Zone Manager are picked up by a 418MHz FM Radio Transceiver 260 and decoded by a Message Decoder 262 .
  • the Message Decoder also uses error- checking information in the incoming messages to determine if bit errors on the radio link have occurred .
  • the Power- Saving Supervisory Circuit 264 switches off the receive side of the Radio Transceiver 160 .
  • a Message Generator 266 allows the Mobile Transponder to contact the Zone Manager through the transmit side of the Radio Transceiver 260 .
  • the Message Generator is used by a
  • Registration Controller 263 which handles attempts to make the Zone Manager aware of the presence of the Mobile Transponder , and is also activated when a user presses one of two buttons 270 , 272 on the Transponder ( if f itted) .
  • the Message Decoder compares the transmitter address contained in the incoming message with tha t stored in ROM 274 . I f the addresses match, then :
  • a trigger signal is sent to a Pulse Signal Generator 276 , which drives a set of ultrasonic transducers 278 (arranged around a hemispherical shell ) at 40kHz for 50 ⁇ s to produce the ultrasound pulse 258 .
  • a counter in the Power-Saving Supervisory Circuit is loaded with the value of the sleep time in the message (via line 280 ) .
  • a Registration Controller 282 on the mobile device is informed that the Zone Manager will no longer address this Mobile Transmitter .
  • the Registration Controller will then begin attempts to register with the Zone Manager . If the drop bit is not set , but the Mobile Transmitter is attempting to register with the Zone Manager, the Registration Controller 282 is informed that the registration attempts were successful , and it need not attempt to register again.
  • the Mobile Transponder prepares to immediately transmit its address over its bidirectional radio interface (260 ) to 208 .
  • the 8 -bit Output Data Value in the message is sent to a 10 - way data port on the Mobile Transponder (the port also includes a ground line , and a strobe line which indicates when the data is valid) .
  • the Mobile Transponder may attempt to send a data packet back to the Zone Manager through the transmit side of the 418MHz radio transceiver 260 . This behaviour may be caused by a number of events :
  • the transmit bit in the incoming message was set , and the transmitter address encoded in the incoming message is the same as that of the Mobile Transponder .
  • the Registration Controller 282 is attempting to register the Mobile Transponder with the Zone Manager, and the transmit bit of the incoming message is not set , and the probabilistic " Slotted ALOHA" contention-resolution protocol (driven by a pseudo-random number generator) indicates that the Mobile Transponder should attempt to send data to the Zone Manager in this timeslot .
  • a message generator waits a 25 ⁇ s turnaround time before switching on the transmit side of the Radio Transceiver 2 S0 , and sending (at 40kbps) a 168 -bit preamble followed by a Manchester-encoded version of the packet whose format is shown in Table (B) .
  • a Cyclic Redundancy Check code may be included in the packet to detect link errors or collisions with transmissions from other Mobile Transmitters .
  • a standard CRC-S algorithm is used to generate the CRC .
  • the Message Generator switches of f the transmit side of the Radio Transceiver 260 .
  • the Power-Saving Supervisory Circuit 264 is used to control other parts of the Mobile Transmitter in order to save power . It is driven by a 32kHz clock 284, which allows it to be low- powered itself. The prime function of this circuit is to turn on the receive side of the Radio Transceiver 260 every 40ms, so that the next incoming radio message from the Zone Manager may be detected and decoded. However, if the Sleep Counter is not zero (indicating that the Mobile Transponder may enter an even lower-powered sleeping state) , the Power-Saving Supervisory Circuit 264 decrements this counter once every 40ms, and only activates the receive circuitry of the Mobile Transmitter 260 once every eight timeslots (so that the wake bit periodically may be checked) . The Power-Saving Supervisory Circuit 264 also controls an 8MHz clock 265 which is used by the Message Decoder 262 and Message Generator 266.
  • the Power-Saving Supervisory Circuit 264 sets sleep counter 286 to zero. This action ensures that the transmitter will check each incoming message until it is instructed that it no longer needs to do so.
  • the Mobile Transponder will enter a "Searching" mode. In this mode, the low-power supervisory circuit switches on the receive side of the 418MHz Radio Transceiver 260 approximately once every 80s, for a period of just over one second, and the Registration Controller 282 is informed that it should attempt to register with the Zone Manager.
  • the "Searching" mode is also the default state of the Mobile Transponder when it is switched on for the first time.
  • a 200MHz Pentium-pro IBM compatible PC with a 43 line parallel digital 10 card may be used and the same hardware is suitable for all PCs shown.
  • a Positioning PC 154, 168, 134 which computes the compositions of Mobile Transmitters from the time-of -flight values determined by Receivers 160, 1672 etc (whose surveyed positions are stored in memory by the Positioning PC) . It continuously polls the Matrix Manager to determine whether the Receivers have been triggered and have results which should be processed.
  • the Positioning PC polls each of the n Receivers connected to the Matrix Manager, retrieves a data value from each (along with error checking information) , and unasserts the "PC Ready” status line.
  • the Positioning PC interrogates the Matrix Manager such as 166, 182 and determines the current temperature of the room, t (measured in °C) . It is then possible to calculate the speed of sound in the room, c, from Equation (14) .
  • Calibration of the system during installation provides a value, d, for the fixed delays in the system (such as the time taken to decode the radio message by the Mobile Transponder) .
  • d the fixed delays in the system
  • Equation 1 can be regarded as a nonlinear model, see Myers, R. Classical and Modern Regression with Applications, PWS-K ⁇ NT, 1990, and can use nonlinear regression to fit the values of l, ⁇ and y for several Receivers to this model. This gives estimates u, v and w 2 . This allows the determination of a best least-squares estimate for the Mobile Transponder's position as the coordinate ( ⁇ , v, -Vw 2 ) , taking the negative square-root of w 2 to fix the transponder below the ceiling. A shadow solution ( (u, v, -Vw) corresponds to an impossible transmitter position above the ceiling.
  • the non-linear model has three degrees of freedom, and knowledge of at least three transponder-receiver distances is therefore required to calculate the Mobile Transponder's position. Furthermore, the model cannot be fitted to the data if all Receivers that detected a signal are collinear.
  • the first signal peak detected by a Receiver will be due to a pulse travelling along a direct line from the transponder. This pulse will arrive before any reflected pulses, which must travel along longer paths. The distance thus measured by the system will be that of a straight line joining transponder and receiver. Occasionally, however, the direct path may be blocked, and the first received signal peak will be due to a reflected pulse. In this case, the measured transponder-receiver distance will be greater than the true distance, leading to an inaccurate estimate of the transponder's position.
  • McGraw-Hill , 1990 provide one method of identifying outliers in data sets , and can be calculated for each of the distance measurements during the nonlinear regression process .
  • An incorrect measurement will be considered to be an outlier in the full set of measurements , and it is likely to have a large studentized residual .
  • the result with the largest positive studentized residual is removed from the set of distance measurements (remembering, again, that reflections can only increase the measured distance) , before re-computing the nonlinear regression and residuals .
  • the statistical test is repeated until the variance of the remaining measurements fall below an acceptable threshold (suggesting that all outlying data points have been eliminated) , or only three measurements remain .
  • a final calculation of the transmitter' s position is then made using those data values .
  • the Positioning PC then retrieves ( from the Matrix Manager) the time at which the measurements used in the position calculation were made . Finally, it sends an event of the form (x, y, z , ( , time) to the Area Manager across a CORBA interface , indicating the calculated position (x, y, z ) , orientation ( ⁇ ) and time of measurement , and informs the Matrix Manager that it is ready for the next set of readings (by asserting the " PC ready" status line) .
  • Positioning PC (163, 134) can send commands to individual Receivers (via the Matrix Manager) to change the peak detection algorithm they use, or to change the threshold they store in memory, or to change the source of the threshold that the peak detection algorithm uses (either onboard switches, or memory) .
  • data from the Scheduling and Positioning PC's is transmitted to the Area Manager 136 which comprises inter alia a data processor (such as a PC) .
  • This gathers events of the form (identifier, time) from the Zone Manager, and events of the form (x,y,z, ⁇ , time) from each Matrix Manager.
  • An associative memory in the Area Manager links events using the time parameter, and generates a stream of events of the form (identifier, x,y, z, ⁇ , time) .
  • these events contain identification, location, orientation and time information, and therefore allow the position and orientation (at a particular time) of a transponder to be determined.
  • This event stream (shown at 288 in Figure 1) may be passed on to users and client applications.
  • Power saving can be achieved in the transponders by switching the receiver into a quiescent or OFF mode during the time intervals between addressing, and if the frequency at which a particular transponder unit is to be addressed is known this can be encoded into the radio message so that after decoding the message the receiver section can be turned off for that period of time. Control signals using radio transmitters
  • control signals may be encoded into the radio addressing signals transmitted to the transponder units so as for example to control a display or robotic device, associated with the transponder unit.
  • Electrical signals indicative of the positions of a plurality of transmitters located at selected, strategic points on an object may be derived and stored and processed, for example by comparison with stored electrical signal data or processed by means of an algorithm, to produce a decision signal indicative of the shape of the object. This may enable a new object to be identified by reference to its shape.
  • Electrical signals indicative of the position and/or orientation of an object whose position and orientation (relative to the area) have been determined by position determining systems may be employed to control the display of a graphical representation of the object on a TV or computer monitor, together with graphical representations of other objects also identified by position (and orientation if measured) .

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Burglar Alarm Systems (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

A system for tracking the position of each of a plurality of labelled objects in a specified environment by determining the transit time of ultrasound signals transmitted from a transmitter on each labelled object, to a plurality of ultrasound receivers positioned at fixed points in or around the specified environment, and computing therefrom the distance of the transmitter from the receivers. The ultrasound transmissions are initiated by radio signals from a master transmitter and each of the objects includes a radio receiver adapted to respond to the radio transmissions to initiate a burst of ultrasound. In order to allow the system to adapt to different numbers of transponder-transmitters and differing demands for service (e.g. frequency of position determination per transponder-transmitter), a coordinating control system is provided for determining the order in which the object mounted transponder-transmitters are to be triggered by the radio transmissions, in response to updatable information relating to the objects and related service demands.

Description

Title Detection System for Determining Positional and other Information about Obj ects
Field of the Invention
This invention relates to a detection system for determining information concerning the location of obj ects , and which can be extended to determine movement and orientation and even physical parameters such as shape of obj ects in a specified environment . The invention can be applied to people and animals as well as inanimate obj ects such as furniture , machines , vehicles , equipment and the like , and in this connection obj ect is intended to include any movable entity .
Background to the Invention
Location systems are known which allow the presence or absence of an obj ect in a specified environment (such as a room) to be confirmed or denied, and relative to one or more reference points to identify where in the environment the obj ect is located .
EP 0485879 describes a system for locating vehicles in automatic guidance transport systems . Ultrasound is employed as a distance measuring medium whilst an infra-red link allows communication between vehicles .
095/14241 describes a tracking system which enables a spotlight to follow a person on a stage carrying a transponder . Again infra-red signals are used to instigate ultrasonic transmissions to determine the position of the transponder and therefore the person . The spotlight is moved accordingly.
EP 0591899 describes another spotlight controlling system for tracking a moving target (actor on a stage) carrying a transponder . Here radio transmissions establish the communication link and ultrasound transmissions are employed to determine distance and position .
These systems do not measure characteristics other than position and are limited with regard to the number of obj ects which can be tracked due to the length of time needed for each ultrasound transmission to die away, which is inherent in any such system, and it is an obj ect of the present invention to provide a detection system capable of tracking more obj ects , which can be modified to allow orientation, rotational movement and linear movement to be determined and tracked and will further allow for control of operable devices on or associated with the obj ect . The Invention
A system embodying the invention enables the position of each of a plurality of labelled obj ects in a specified environment to be determined by determining the transit time of slowly propagating energy transmitted from a transmitter on each labelled obj ect , to a plurality of receivers positioned at f ixed points in or around the specified environment , and computing therefrom the actual distance of the transmitter from the receivers , wherein the transmission of the slowly propagating energy is initiated by a burst of high speed propagating energy from a master transmitter located so as to cause transmitted bursts of such high speed energy to enter the said environment , and the transmitter is associated with a receiver adapted to respond to an appropriately encoded burst of such high speed energy, to thereby initiate a burst of slowly propagating energy therefrom, (each said transmitter/receiver combination being referred to as a transponder) and in order to allow the system to adapt to dif ferent numbers of transponders and differing demands for service (eg frequency of position determination per transponder or obj ect ) , a coordinating control system is provided for determining the order in which the obj ect mounted transmitter/receiver combinations are to be addressed and triggered by the transmissions from the master transmitter , in response to updatable information relating to the obj ects and related service demands .
Preferably each of the said plural ity of receivers is adapted also to be responsive to said burst of high speed energy , so as to identify the beginning of a window of time within which a slow speed energy burst may arise and be received thereby . The burst may be the same burst as is sent to trigger one of the transmitter/receiver units transponders to transmit a slowly propagating wave , for time measurement .
Alternatively the said plural ity of receivers may be connected by a network of cables and the reset signals and the polling of the time values may be achieved via the network .
Preferably the receivers include a latch to retain information about the time at which the beginning of a burst of slow speed energy is received after the beginning of each said time window .
Preferably the receivers are scanned (ie polled) so as to recover the time information and reset the latches .
Preferably computing means is provided to associate the time information with the receiver from which the times have been obtained, and generate a transmit time for each receiver .
Preferably the computing means is programmed to convert the transit time into distance values and using position data relating to the receivers stored in a memory, to compute therefrom the position of the obj ect mounted transponder from each of the receivers , and therefore , by geometry its position relative to one or more fixed points defining the specified environment .
By encoding the high speed energy transmission, so a plurality of different slow speed signal transmitters all located in the same specified environment , can be triggered in turn, so that during a sequence of time windows , position data relating to each of the slow speed signal transmitters in the environment can be obtained, the data in each window relating specif ically to one only of the obj ect mounted transponders .
Typically the slow speed signals are acoustic or ultrasonic signals and the high speed s ignals are electric currents or voltage or visible or invisible electromagnetic radiation such as IR, UV or radio signals .
Encoding of the high speed s ignals may be by way of frequency or amplitude or phase modulation or pulse coding or any combination thereof.
Preferably digital encoding techniques are employed, if only to ensure adequate signal to noise ratios can be achieved.
Background theory to position determining systems
Such systems are based on the principle of location by multilateration. For each object that is to be located, the straight-line distances are measured from a point on that object to a number of other points in the environment whose positions (in some frame of reference) are already known. Given enough distances, and a suitable geometry of the endpoints between which they are measured, it is possible to derive a position for the object.
To determine the distances between objects and points in the environment, transmitters and receivers are placed on them and measurements are made of the times of signal pulses being generated and received. The system can be used to measure round trip delays, or alternatively can give the difference in the one-way delays for signal pulses sent simultaneously (or with known time offsets) . If the one-way delay in two media are dt: and dt2 , then
D = dtx - dt2 , and if the (predictable) velocities of propagation in the two media are v1 and v2, and the distance between transmitter and receiver is R, then
Figure imgf000007_0001
It may be seen that if v2 is much greater than vχ ι then the range calculation can be approximated by
R = DI .
Thus , if , for example , radio and ultrasonic signals are transmitted simultaneously through space then the equation R = Dvx will give sufficiently accurate results for the limited range of distance likely to occur in an indoor environment, such as a typical house, room, office or even small factory unit or warehouse.
It is not necessary to transmit both fast and slow speed signals simultaneously. A radio pulse for example, can be treated as if its travel time is zero (i.e. independent of range) , and it can thus simply be used as a trigger signal. However the flight times of the slow signal pulses (e.g. ultrasonic pulses) can be accurately measured by synchronising the transmitter and receiver units, as by a timing pulse generated by a suitable controller.
Reflections from other objects in the transmitter's environment may cause multiple signals to arrive at a receiver. Any direct -path signal from the transmitter to the receiver should arrive before these reflections, so that in general all pulses arriving at a receiver after' the first one should be ignored. For this reason, it is important that the width of the pulse sent by the transmitter is as short as possible, so that the direct-path and reflected signals may be identified optimally.
Problems in such systems
It should be noted that diffraction of the pulse signal may also occur, and this will produce similar effects to the unwanted reflections.
Once a set of distances from the transponder transmitter to the receivers has been found, the system is programmed to attempt to derive a position of the transponder.
It is possible that some receivers will have detected no signal from the transponder transmitter, due to obstructions, directionality of the transmitting element, etc. These receivers must be excluded from further consideration. It is also possible that the f irst pulse detected by a receiver is a reflected or di f fracted signal . (This may occur, for example , if the direct signal path is obstructed) . In this case , the computed distance will be greater than the true distance , and errors would be introduced into the position for the transmitter that is reported by the system if that incorrect distance is used in the position calculation . In general the computed distances would not identify a unique point (or more generally smal l volume) . If this occurs the erroneous computed value has to be identified and eliminated .
Reflected and diffracted signals that arrive at receivers can sometimes be distinguished from direct path signals by inspection of the received pulse shape , and thereby inaccurate measurement eliminated .
I f this is not possible , other ways must be found of comparing the distances measured by receivers for example by comparing measurements made by pairs of receivers in order to identify and eliminate erroneous signals .
One way of doing this is to compare the distances reported by all pairs of receivers that have detected a slow speed signal . It can be shown geometrically that the difference of the measured distances from two receivers to a transponder transmitter cannot be greater than the straight - line distance between the two receivers , if the measured distances are accurate . Thus , if a pair of receivers is found for which the measured distances to the transponder transmitter do not satisfy this criterion , the receiver that has reported the longer distance can be excluded from further consideration , since reflections and refractions in general will tend to produce longer distance values than the true straight - l ine distance . Distance computation and pos it ion f ixing
Having performed this algorithm, the system may be adapted to attempt to f it a non- linear regression model to the remaining distances , by performing an iterative regression computation on the data .
I f this fails to converge , the system may be programmed to report that it is unable to calculate the position of the transmitter using the available data .
If the iteration converges , however , studentised residuals are preferably calculated for the distances , and the system preferably determines the variance of the distance data .
Reflected signals will tend to produce large value , so that if the variance is below a predefined, acceptable level , the system can be programmed to conclude that all erroneous signals have been identified and eliminated .
If the variance is greater than an acceptable level , signals derived from the receiver associated with the distance that has the largest positive studentised residual is assumed to have resulted from at least one reflection and these signals are f irst excluded from cons ideration . The system is programmed to attempt to fit the model again .
This procedure involving the deletion of receivers and signals from consideration is repeated as necessary, until the variance of distance data from the remaining detectors is suf ficiently small .
This process is of course only val id if a large enough number of signals/receivers st il l remain when the small variance is noted .
At any stage in this- process , it may be found that the geometry or number, or both of the remaining receivers under consideration is insufficient for a three-dimensional position for the transponder transmitter to be calculated. For example, all the remaining receivers may be in line.
If this occurs, the system is adapted to abort the computation and report that insufficient information has been gathered to fix the position of the transmitter at that time.
In an application of this procedure, when the system criteria indicate that all receivers that may have detected an erroneous signal have been eliminated from consideration, a non-linear regression model has been fitted to the distances calculated from the pulse times determined by the remaining receivers, and a transponder transmitter position has been found, the system may use this information for various purposes, or it may transmit the information to other interested parties.
Before transmitting a second slow speed signal the system preferably waits for reverberations of the previous distance- measuring pulse to die out before attempting to repeat the above procedures to get another fix for the transponder transmitter position. Obviously, the time the system must wait for this to happen will depend on the characteristics of the transmission medium and the transmitter's environment. This may be determined empirically, or by adaptation such as by self-learning.
In one embodiment of the present invention, there is provided a detection system for determining information concerning at least the position of an object, using signal pulses respectively of high and slow propagation speeds, comprising at least three fixed, non-collinearly distributed slow speed signal responsive receivers, at least one transponder transmitter unit for transmitting slow speed signal pulses, mounted on the object, means for generating and transmitting high speed signal pulses to synchronise signal pulse transmission from the transponder with the commencement of a reception-sensitive period at a receiver and means for computing signal pulse reception times and correlating differences therein to determine the required information about the position of the object.
In another embodiment, a separate transmitter is located on each of two or more objets in the specified environment and each transmitter includes a high speed signal responsive receiver adapted to respond to only one of a plurality of high speed signals, and the separate transmitters are triggered in sequence by a transmitter of high speed signals which is adapted to transmit uniquely one of the plurality of possible high speed signal at the beginning of each timeframe.
The invention can be adapted to identify and log movements of two or more objects in the same area/space, by mounting a transponder transmitter on each object and providing each transponder with a unique address, so that each transmitter can be triggered in turn and the position of the relevant object determined in a sequence .
It is not only necessary to trigger transponder transmitters uniquely, but also necessary to restrict transmissions from multiple objects so that they do not interfere with each other, by making sure that the transmissions do not overlap in time in the same space.
In accordance with the invention, this is arranged by a coordination device which addresses the transmitters, and sends address information to them as part of a regular timing synchronisation signal. For example, the slew speed signal transmitters, each with their own high speed signal receiver and unique address, could be placed on the objects to be located, and access to the space in which the distance- measuring pulses are transmitted is divided into discrete timeslots, the duration of each timeslot being the time needed for reverberations of pulses to die- down. At the start of each timeslot, the coordinating device is adapted to send out a high speed timing-synchronisation signal (typically a radio signal) which consists of an address and a timing pulse. All the transponders on the objects will receive this signal, and each compares the received address with its own. If the addresses are the same, that transponder one transmits a slow- transmission-speed distance measuring pulse, when the timing pulse is received.
The frequency at which addresses are transmitted by the coordinating device may be varied, either during set-up, or based on information obtained from previous addressings.
Thus during set-up an object which will normally be static and remain for long periods of time in one place, can be identified as such, and its address only transmitted infrequently - say once every 5 minutes or once every hour. However objects which it is known in advance are likely to move (or be moved) within the space, can be identified as mobile, and their transponder addresses transmitted more frequently - eg once every minute, or every few seconds, or even more often if the system capabilities permit.
In a more sophisticated arrangement, a memory in the coordinating device may be used to store against each address, an item of information which indicates the frequency of position changes, for that address, detected by the system during some predetermined period of time (which might be minutes, hours or days depending on the environment and the nature of the objects carrying the transmitters). The stored item of information is employed to determine how often each address is broadcast. If the item of information changes in value, indicating an increased or decreased frequency of movements of the address within the space, the coordinating device can respond appropriately and increase or decrease the frequency of transmissions of the address received. The system can also be used to determine the true orientation of an obj ect , by comparing the position of two or more transponder transmitters mounted on the obj ect .
I f an obj ect is rigid and stationary (or moving slowly or predictably enough) and a number of transmitting elements are placed at known points on the obj ect , the positions of all the transmitters can be found in three dimensions . Since the fixed spatial relationship between the transmitters on the obj ect is known, as well as their measured positions in three dimensions , it is also possible to determine the orientation of the obj ect .
Depending on the knowledge of the capability of movement of an obj ect , one or more transponder transmitters located thereon will enable the position and orientation of the obj ect to be determined . Thus an obj ect mounted for rotation about a fixed axis and onlv capable of that movement will generally only need one off - axis transmitter to be mounted thereon to allow its rotational position to be computed .
I f two spaced apart transmitters are mounted on an obj ect , more information about rotation and position can be determined to advantage .
If orientation is to be determined efficiently and quickly, it is preferable to cause the two or more transmitters on the obj ect to transmit in succession .
If the obj ect is moving , then the same pattern of addressing is preferably maintained so that changes (caused by movement ) in the actual and/or relative positions of the transmitters will be as small as possible , and the most accurate description of each orientation as wel l as the movement of the obj ect wil l be obtained .
A preferred embodiment of the invention comprises a system for determining the position of an obj ect in a specified environment in which the transit time is determined of slowly- propagating measurement energy transmitted from a transmitter on the obj ect to a plurality of receivers positioned at fixed points in or around the specified environment , and in which the distance of the transmitter from each receiver is computed from the times taken for the measurement energy to propagate from the obj ect to some of the receivers , and wherein the slowly propagating measurement energy is initiated by a trigger burst of energy having a higher speed of propagation from a master transmitter which is located so as to transmit trigger bursts into the environment to initiate the measurement energy transmitter on the obj ect of interest , and wherein a plurality of such transmitters are located on different obj ects and/or points of the same obj ect within the environment , and each transmitter of measurement energy is associated with and controlled by signals from a receiver responsive to trigger burst transmissions , and the latter are encoded and/or transmitted at different frequencies so that the receivers located throughout the environment can be individually addressed from the master transmitter,
characterised in that
a coordinating control system is provided for determining the order in which the obj ect mounted transmitter/receiver combinations are to be addressed and triggered by the transmissions from the master transmitter, together with memory means for storing relevant information about the dif ferent combinations with reference to their addresses , by which the order can be determined .
The coordinating control system memory means typically stores a unique address for each of the receiver/transmitter combinations , and the control system is programmed to encode the transmissions using the address information so as only to address the transmitters individually . Preferably in addition to the unique address for each receiver/transmitter combination , at least one additional item of information (a weighted hierarchy indication for schedule positioning , or "WHISP " ) is stored in a manner which can be associated with each unique address , and the control system is programmed to select from the addresses that of the receiver/transmitter combination next to be polled, using the WHISP values to determine the order of addressing .
The coordinating control system may be separate from or form an integral part of the master transmitter .
WHISP options
A WHISP may be stored for each unique address , and it is the WHISP which must be changed to adj ust the subsequent addressing of the transponders .
Alternatively a set of standard WHISPS may be stored and an association between each unique address and one of the standard WHISPS is stored for each unique address , so that an appropriate WHISP is linked to each unique address . In that
Figure imgf000016_0001
event only the associat ions need to be changed so as to influence the subsequent addressing of the transponders . Likewise a change to one ( standard) WHIS? will mean that all the associated addresses wil l be given a new hierarchial position .
For complete flexibility unique addresses , WHISPS , (and/or the associations between unique addresses and WHISPS) can all be changed to allow for the entry or exit of transponders into and out of the environment , and to alter the manner in which those in the environment will be addressed by the coordinating control system.
In one example the WHISP may be a simple logic 1 or 0 to indicate whether the transponder combination is to be addressed or not .
The WHIS? may comprise a priority or weighting measure to determine the order or rate at which the transponder is to be addressed.
The WHIS? may comprise two items of information, f irstly for example the length of time since the transponder was last addressed (which may be continually updated by clock information) and secondly for example a rate of interrogation figure to be achieved by the system for that transponder .
Assembly of address l ists ( schedul ing)
The coordinating control system may compile a list of transponders to be addressed in a sequence by interrogating all of the unique addresses and their related WHISPS and compil ing the order in which they are to be interrogated using the current WHIS? informat ion .
Thus in one arrangement the coordinating control system may create a schedule of unique transponder addresses using the WHISP data, and arrange the order of the addresses in the schedule , and therefore the order in which they are to be interrogated . The schedule is then used to determine the encoding of each trigger burst from the master transmitter and the order in which the transponders are thereby interrogated .
In this arrangement , updating may be performed in two different ways . Thus in one mode , any changes which are required to be made to WHIS? data may be held over pending the end of the interrogation of the current schedule of addresses , whereupon the WHIS? data is updated prior to the compilation of the next schedule .
Interruptions to schedul ing
In an alternative mode , a change to a WHIS? may be permitted to interrupt the running of a particular schedule if the unique address or addresses associated with that WHIS? is/are still to be interrogated, but is held over to update the WHISP data before the next schedule is compiled if the particular address or addresses has/have already been interrogated in the current schedule .
In either mode , the system may include an emergency override to allow the transponder triggering in accordance with the current schedule to be terminated immediately, and for a new schedule to be immediately compiled, taking account of the WHISP change associated with , or entered with or after, the emergency override instruct ion .
Dynamic scheduling
An alternative and more flexible approach to scheduling involves merely determining f rom all available data existing j ust before the next trigger transmission s due , the next transponder address which should be interrogated , using a suitable algorithm and high speed processing , and the development and implementation of one particular algorithm for performing this function is set out below .
Determination of dynamic WHIS? scheduling
Changes to WHISP data may occur as a result of a lapse of time , the arrival of a particular time or date, or by interaction with an application running on a computer (which may be part of the position determining system, or the coordinating control system, or another computer altogether) , or by the entry of data by an operator for example to indicate that the system should cease its scheduled transponder position determining function and for example seek one particular transponder (which may for example relate to that on a particular person or obj ect believed to be within the environment) .
Additionally or instead, environment related information may be allowed to create an interruption to permit or cause WHISP data to be altered, such as an increase or decrease in temperature, light level , or sound level or the like , either within the environment or within a separately monitored environment , or by transducer originating signals linked for example to the movement of an obj ect either within the environment ; within an adj oining environment ; or for example by the opening of a door communicating between one environment and another .
Independent movement sensing
The movement of an obj ect within the monitored environment or an adj oining environment may be detected by means of a movement sensor such as a trembler switch , associated w th the obj ect . I f so a radio or hard- ired communication channel may be required between the sensor and the coordinating control system . WHISP data changes
References to changes to WHISP data , include changing the WHISP data stored in a unique memory means linked to one of the unique addresses , or changing the association between a transponder address and a plurality of standard WHISPS , depending on whether a separate WHISP is stored for each address , or whether a number of standard WHISPS are stored and associations between them and the different transmitter addresses are stored .
Operation of the scheduler
According to another aspect of the invention, the scheduler may be adapted not only to determine the order in which the transponders are to be interrogated but also the rate of interrogation of any one transponder .
This may for example be a f ixed rate associated with the particular transponder address , which rate is entered as a second item of information in each WHISP .
Alternately in another example , the second item of information may be an adj ustable rate value , which can be altered in relation to variations in a parameter monitored by a transducer or sensor . The parameter may for example be temperature , light level , sound level or the l ike , or may be a value which can be adj usted by an operator , or in relation for example to a parameter such as the time , or the date .
According to a particularly preferred aspect of the invention the rate parameter associated with each WHIS? itsel f may be a dynamic variable , whose ins tantaneous value is determined for example by whether a variat ion has occurred in the detected position of a transponder carried by an obj ect . Resource allocation
If the object (s) are stationary, the position (s) of the transponder (s) carried by the object (s) will be substantially- identical each time the system interrogates the relevant transponder (s) . By comparing the last noted position (s) with the current noted position (s) and applying a tolerance band to cover miner variations introduced by the measuring process, the system can be programmed so as to reduce the frequency at which any one transponder (or group of transponders) is interrogated, down to a relatively low level, thereby reducing the traffic on the system and allowing more time to be available for more frequent interrogation of transponders positioned on objects which are moving, and whose positions therefore are likely to vary from one reading to the next .
In order to monitor a rapidly moving object interrogations spaced by less than a second may be needed in order to track its movements, and it is of great advantage to reduce the rate of consideration of transponders on other objects which are essentially static, or only moving very slowly or in a predictable pattern.
Tracking rate variation
According to another preferred feature of the invention, the system may be programmed to utilise a third item of data within a WHISP, and to increase the tracking, de frequency of interrogation) of a transponder of a first object if a second object having such a third item of information stored as part of its WHISP is perceived by the position determination of the transponder on the second object, to have moved close to the first object.
Thus for example the WHISP of a transponder address of a human being may carry such a third tem of information, so that if the transponder linked to the person concerned is seen by the system to approach an obj ect which is normally stationary and whose transponder would otherwise be interrogated perhaps only once every 5 minutes , the interrogation rate of the transponder associated with the stationary obj ect may be increased in anticipation of the possibility that the person may suddenly move it .
Thus by allowing for the instantaneous adjustment of the next transponder address which is to be interrogated, a fully dynamic system can be created since it allows the scheduler to alter not only which transponder is to be interrogated but also the rate at which different transponders are to be addressed with complete flexibility, thereby to follow changes and developments in an environment , with little or no delay . The system can therefore be thought of as having very low hysteresis and by including pre-programmed items of information in each WHISP, which can alert the system to the likelihood of changes occurring, so sudden changes in the environment can be followed almost immediately they occur.
Basic assumptions to allow algorithm parameters to be determined
By way of example let us consider a location system that uses a set of ultrasound receivers placed at known positions on a ceiling in a room to detect ultrasonic signals from an ultrasound transmitter attached to an obj ect in the room . By determining the times -of - flight of those signals from the ultrasonic transmitter to the ultrasound receivers , we may calculate in the three dimensions the position of that obj ect in the room. The a system can be extended to locate more than one ultrasonic transmitter in the room, provided each has a unique address so that they can be triggered separately, typically by serially poll ing the transmitters .
In order to accurately measure the signal flight -t imes , a central coordinating device triggers the transmitter, at the same time as a reset signal is sent to the ultrasound receivers, typically over a wired network. Synchronisation between the transmitting and receiving elements of the system is thus achieved. To ensure that only one transponder is triggered (where two or more transponders exist in the room and so as to prevent the confusion that would be caused if ultrasound receivers were to detect ultrasound signals from more than one source) , each ultrasonic transmitter is controlled by a radio receiver and is triggered by the transmission of a suitable radio signal into the room. Each- receiver includes a unique address . The radio signal contains one such unique address. Upon receipt of the radio signal, each radio receiver compares the transmitted address with its own, and, if the addresses match, its ultrasonic transmitter is triggered to emit a short pulse of ultrasound.
The central coordinating device has to allow for reverberations and reflections of each transmitted pulse to die away (so that the ultrasound receivers detect ultrasound from only one source) before triggering another ultrasonic transmitter. For a typical room, the time needed to allow all such sounds to die away can be of the order of 20ms.
It can be seen, therefore, that there is a limit on the number of ultrasonic transmitters which such a location system can trigger in any time period. The time between each radio addressing message is called a timeslot, and only one transmitter can be interrogated and triggered within each timeslot .
Efficient distribution of the timeslots between ultrasonic transmitters to be located is clearly a priority, and this distribution should take account of the different rates at which location information about particular objects is desired. For example, the system might normally monitor transponders carried by people (who move often) at least once each second, whereas it might monitor those attached to desks, filing cabinets or v/orkstat ions (which move infrequently) only once a minute . If , however , a monitored person walks up to a particular workstation , the system may be programmed thereafter to monitor that workstation' s position once a second at least while the person is noted as being in the vicinity, because it is then more likely to be moved .
A further constraint on the allocation of ti eslots can arise when members of a group of transponders need to be interrogated in consecutive timeslots . This is advantageous when the positions of the transponders in the group are to be used to determine both the location and orientation of an obj ect , such that any motion of the obj ect between readings can make the derived information inaccurate .
As mentioned above , the process of timeslot distribution is called scheduling, and software , typically in the form of an algorithm for performing this function, will be called a Scheduler.
The priority level assigned to each different transponder is called its Location Quali ty of Service (LCcS) .
The LQoS of a transponder may also be changed at any time , and subsequent timeslot allocation needs to take account of any such changes .
The Scheduler provided by the present invention is designed to accommodate LQoS changes ; to have the appropriate long term behaviour; to assign timeslots to transponders based on their Location Quality of Service (LQoS ) ; and furthermore to deal with service demands which are greater or less than the system capacity, by scaling excessive requests fairly in the former case , and padding with dummy timeslot assignments in the second . It is also capable of adj usting timeslot assignment to allow a group of transponders to be located consecutively . Scheduler implementation
Let us consider a system having the following parameters:
(1) The length of a timeslot is 40ms (ie the system is capable of determining 25 positions per second)
(2) The transmitters each have a unique 16-bit address
(3) The reserved address 0 is not allocated to any transmitter.
(4) Every transponder is also a member of one transponder group, also identified with a 16-bit number (again, identifier 0 is reserved) .
(5) The scheduler is a CORBA-based distributed software programme (Object Management Group, The Common Object Request Broker; Architecture and Specification. Revision 1.1, OMG Document Number 91.12.1, December 1991) running on a workstation.
(6) Location Quality of Service (LQoS) is expressed as an integer representing the desired period of positioning (eg an LQoS of 25 requests one position every 25 timeslots, ie once per second) .
In accordance with the invention, the Scheduler is adapted to maintain a scheduling table stored in memory. Each row of the table contains six entries :
1. A 16 -bit transponder address, a
2. A 16-bit group identifier for the transponder, g 3. The LQoS for the transponder, 1
4. A real number called the Effective LQoS ,cr ΞLQoS) , e
5. A real number called the score, s
6. A bit called the slotswap bit, b. A row in the table is described by an ordered six- type (a,g, l,e, s,b) . A global flag called "excess -demand" (to be described later) and an integer called "las -group" are also maintained by the Scheduler.
When the Scheduler process is initialised, the scheduling table is empty. A single row (0,0,1,1,0, false) is immediately added. This entry represents a dummy transponder. The excess -demand flag is set to false, and the last-group is set to zero.
Adding or changing a request
An operator (user) or software application can contact the Scheduler over its CORBA interface to indicate that the location requests for a transponder group should be added or changed. It should be noted that if two or mere transponders are members of the same transponder group, then their location requests should not be capable of being added or changed separately. Furthermore, the requests involving the dummy transponder address 0 and dummy transponder group ID 0 will be ignored. The user or application passes the following information to the scheduler:
* g, the transponder group identifier
* 1, the desired LQoS for members of this transponder group
* a:, ...., an, the transponder address of members of this transmitter group.
For each transponder address alr ....an, the scheduler then adds or modifies an entry in the scheduling table.
For values of i between 1 and n, if a row of the form (aλ, g,, l,e,, s._,b.) is present in the table, it is updated to (a,,g, 1, e. , s. ,b,) , otherwise a row (aL, g, 1 , 0 , 0, false) is added.
The scheduler is then arranged to recalculate the ELQoS for each of the m entries in the table. First, it calculates the total level of LQoS demand, (t) , where t is given by Equation (1) .
Next it updates the ELQoS for each of the n entries in the scheduling table, ex, with a new value e'λ. If t is less than 1, then e';. is given by Equation (2) .
Otherwise, if t is greater than or equal to 1, is given by Equation (3) .
Deleting a request
When a user or application contacts the Scheduler over its CORBA interface to indicate that a location request for a transponder should be deleted, it also passes the address of that transponder a., to the Scheduler. (The entry corresponding to transponder address 0 may net be removed) . If the scheduler finds that an entry for that transponder is present in the table, it removes the corresponding row (ar,gr,er, sr,b_) from the table. The scheduler then updates every other row in the table (ax,glx, ex, sx,bx) to (ax,gx, lx,ex, s'x,bx) where the value of S'x is given by Equation (4),
In Equation (4) n is equal to the number of rows in the table before removal of the location request. The scheduler recalculates the effective rates based on the remaining table entries as described in the previous section.
Allocating timeslots
Once every 40ms, the Scheduler must tell the central coordinating device (across a CORBA interface) the address of the transponder which should be located next. It does this by examining the contents of the, scheduling table and any attempts to update the table are blocked until this examination is complete . First, the Scheduler steps through each row in the scheduling table. If the last -group register does not contain 0, and the scheduler encounters a row in which the transponder group ID is the same as the contents of the last-group register, and in which the swap-slot bit is false, it sends the transponder address contained in that row to the coordinating device, and sets the swap-slot bit on that row to "true".
Otherwise, the Scheduler operates in accordance with the following algorithm:
(5)
1. Choose the row in the table with the highest score (ac,gc,lc,e-,s-,b .
2. If b= is false, for each row of the table which has the transmitter group ID gc set the swapslot bit to false. Then, update each row in the table (ax,gx, lx, ex, sx,bx) to (ax,gx,lx,ex,s'x,bx) where s'x is given by
s'x = (sx - l/ex)
Next, the single chosen row in the table is further updated to (ac,gc, lc,e-,s" ,bc) where s"c(=s' .c - 1) .
The lastgroup register is set to gc.
Finally, the coordinating device is informed of the address ac of the transponder that should be located next (if ac is zero, this indicates that no transponder should be addressed in the next timeslot) .
3. If b- is true, update each row in the table (ax,gx, l ,ex, sx,bx) to (ax, gx, lx, ex, s ' x, bx) where s'x can be computed as above. Next, the single chosen row in the table is further updated to (ac, g , i_, e , s"c, f alse^ where s"c=(s' .c - 1) . The row m the scheduling table with the highest score is chosen again, and the above steps are retaken .
Rotational movement
The relative positions of two or more transponders carried by the same obj ect can be checked against their previous known positions to determine whether or not the obj ect has for example been rotated .
According therefore to another feature of the invention, a set of two or more transponders which are carried by the same obj ect can be identif ied as such with a further item of information in their associated WHISPS , such that the control system will schedule the interrogation of the second and any subsequent transponder addresses of the set of transponders on the obj ect after the first of the pair has beer- interrogated .
By interrogating the set of transponders on an obj ect in rapid succession so any relative movement between position- determination of each point is minimised, rendering the orientation picture of the obj ect from each such succession of position determinations to be as accurate as possible .
In general three transducers are needed to permit the orientation (and any changes in orientation) of an obj ect to be determined . For some obj ects normal ly constrained to occupy a limited range of positions only two or even one transducer may be suf ficient .
The invention also lies in apparatus for performing any of the above methods , and in part icular comprises a master radio transmitter for transmit t ing short duration radio frequency trigger signals into an environment ; a plurality of radio receiver-controlled ultrasound transmitter units ( transponders ) located en movable obj ects throughout the environment ; a plural ity of ultrasonic rece ivers located at f ixed , spaced apart points in the environment and adapted to receive ultrasound signals from transponders in the environment ; a coordinating control system adapted to cause the master radio transmitter to emit appropriately encoded trigger signals to trigger one particular transponder (if present) in the environment , and cause it to emit ultrasonic radiation; and a computer based data processing system receptive of signals from the ultrasound receivers for determining from the transit times associated with those transmissions the apparent line of sight distances of the transponders from at least some of the receivers , and thereby from the geometry of the receivers the apparent position of the obj ect in the environment ; memory means for storing position data for each such identified transponder and therefore the obj ect on which it is mounted; scheduling means for determining the encoding of the next radio trigger transmission, and therefore the address of the next transponder whose position is next to be interrogated; additional memory means for storing at least one additional item of information in association with the position data of each transponder; and programmable data processing and/or logic means for determining from the said additional items of information and/or from at least one previously interrogated transponder address , which transponder address is to determine the next encoding of the radio trigger transmission .
In a preferred arrangement , further memory means is provided within which is stored data relating to the time at which each transponder address was last interrogated, and the programme running in the processor controlling the said logic means is adapted to compare the information stored in each said further memory means with the WHISP data for all transponder addresses suspected to be in the environment , to determine which of the transponders is next to be interrogated, and to encode the next radio trigger signal accordingly .
The different memory means may comprise different parts of one memory device ( such as a large random access memory) or may be formed from two or more di f ferent memory devices , at least some of which may be random access memories and others may be programmable read only memories .
Reduction of errors due to spurious acoustic signals
Obviously any acoustic noise sources in the environment which can generate ultrasonic signals similar to these sent by the ultrasound transmitters , have the potential to introduce false position determination .
In order to overcome this problem, and in accordance with another feature of the invention, the ultrasonic receiver is rendered sensitive only to sound of a particular frequency, by the use of an ultrasonic detector with a narrow bandwidth around that frequency, and the bandwidth of the sound signal emitted by the transmitter is also limited to a narrow bandwidth around that frequency, and wherein the system includes a further ultrasonic receiver adapted to simultaneously monitor sound at at least one of a number of different frequencies , and a logic based system determines if a signal detected by a receiver at the unique frequency used by the transmitter is accompanied by other sounds at some or all of the said different frequencies and if not , the detected signal is identified as being TRUE , and if accompanied by other sounds , the detected signal identif ied as being corrupted by noise .
Thus for example noise sources in the environment ( for example , a set of j angling keys ) tend to s imultaneously generate signals at a large number of dif ferent frequencies , so that sounds are detected at the transmit ter frequency and at other frequencies s imul taneously . The detect ion of such a range of sound signal s ( even though it contains a component at the transmitter frequency) has to be ident if ied as either a FALSE sound signal or is as a TRUE signal which has been corrupted by noise , and in either event the s ignal mus t be rej ected . The number of additional f requencies that are monitored is preferably greater than one , and the monitoring may be performed at one or more of a number, of different points m the environment .
Orientation determination
In some circumstances , a plurality of transponders may be attached to the same obj ect . Thus if three transponders are attached to a rigid obj ect so that they are not colinear, then by finding the positions of those three transponders not only the position but also the orientation of the obj ect may be deduced (assuming that no movement of the cb ect has occurred between the time at which the measurements were made) .
Component redundancy reduction
Typically each transponder has its own independent radio interface , controlling logic , and one or more ultrasonic transducers . However, where two or more such transponders are placed on an obj ect , complete physical independence of the transmitters is not required and components of different transmitters can be interconnected using wires and duplication of components which are common to the transponders can be reduced or eliminated .
According to one aspect of the invention, a single radio receiver may be provided together with decoding logic to drive a number of individually addressable ultrasonic transducers . Thus the one receiver will respond to more than one address and hence can be described as a Mul tiple -Address transponder but for each address only one of the ultrasonic transducers would be triggered, corresponding m each case to one of the points on the obj ect .
The invention thus -envisages an obj ect having mounted thereon a plurality of ul trasonic transducers located at a corresponding plurality of different non-colinear positions on the object, and a single radio receiver adapted to trigger one or another of the transducers depending en an address code contained within a radio signal received thereby, so that the different transducers may be triggered by appropriately coded radio signals, to transmit ultrasound signals into the environment at specific times, and from the different points on the object, to enable the unique positions of the said points on the object to be determined and enable the orientation of the object to be determined.
The invention also envisages each transducer as being comprised of a group of two or more similar transducers facing in¬ different directions to more uniformly spread the ultrasound around the environment .
Ultrasonic transmitter design
In a preferred embodiment, the basic ultrasonic transmitter incorporates a plurality of ultrasonic transducers which are driven simultaneously to create a pulse of ultrasound from the device .
Typically, the transducers (which, individually, have a relatively narrow beam angle) are arranged to point indifferent directions so as to generate a generally omnidirectional transmission pattern. However, it is possible to arrange the transducers so as to produce a more directional beam, and two advantages follow:
1. The number of transducers required can be reduced. This is especially relevant if a transmitter is to be placed on ar. ultrasonically opaque ob ct in such a way that if an omnidirectional signal were to be generated by the device a known fraction of the omnidirectional signal would be absorbed. A directional beam extending over the area not absorbed by the opaque object ca'n therefore be generated using fewer transducers than would have been required to generate the omnidirectional signal, but the ultrasound signal issuing from the object will appear to be the same, as if an omnidirectional source had been employed.
2. The orientation of an object may be determined by identifying the positions in the environment at which receivers are located which receive signals from a transducer on the object. Thus directional transducer on the front of a computer monitor may be sufficient to enable the direction in which the screen is facing to be determined, by mapping which of the receivers in the environment "hear" the transmitted ultrasound.
Power saving
Standard operation of each transponder leaves the radio channel open continuously. This technique ensures that it will receive all addressing messages from the coordinating device, but if the transponder is battery powered it is also disadvantageous, in that power is used continuously by the radio interface and the batteries will become rapidly discharged.
According to another aspect of the present invention, the transponders are made aware of the fixed interval which is to occur between addressing messages and power saving is achieved by turning off the radio interface after a message is received and switching it on just before the next one is due.
This may be achieved by providing the transponders with a low- power supervisory circuit which can turn the radio interface on and off.
Further power saving may be achieved if the frequency with which a particular receiver- transmitter will be addressed by the coordinating device is known. If the coordinating device is programmed so as to be aware that the transponder will not be addressed for some amount of time, it ca encode that time in the radio message , and after decoding the message the transponder will be able to switch of f its radio interface for that amount of time . The power saving is particularlv efficient if a transmitter is made to " sleep " for a long time , as would be the case if the transponder is being used to track, an item of office equipment such as a printer, which is not expected to move very often .
The scheme described above can be extended to allow sleeping transponders to be woken up at short notice . Thus in the case in which the coordinating device is sending out 50 addressing messages each second, the transponders can be configured so that they turn on their radio interfaces once a second, at a time when a message is due , and decode that message ( therefore using 1/50 of the power which would have been used if they had decoded each message) . A data bit at the start of each message (the wake bit ) indicates that the coordinating device wishes to wake up all sleeping transponders or a set of sleeping transmitters (say, all those with even addresses) . If a number of bits can be transmitted at the beginning of each- transmission, the " sleeping" transponder can be grasped and woken up accordingly by transmitting an appropriate code , within the capability of the bits . If a sleeping transponder receives such a message , and if that message is applicable to it , it will wake up , and from that time on check every addressing message from the coordinating device , until such- time that it is instructed to go to sleep again . With this method, much of the power- saving advantage of sleeping can be retained, and yet it can quickly trigger a transponder so as to be able to determine its location . Thus in the case of the printer described above , if a person walked up to the printer, it is likely that they might move the printer, and in which event it may need to start tracking it immediately, even if it was currently " sleeping " to save power .
I f a transponder is taken out of range of the master radio attached to the coordinating device , there is no point in it continually turning on its. radio interface, for it will be unable to receive addressing messages . Therefore , in order to save power in these circumstances , if a transponder does not receive an addressing message at a time when one is expected, then it can be programmed to go into sleep mode for a predetermined period (perhaps one minute) , before turning the radio channel on again for sufficient time to detect whether it is in range of the coordinating device again. For example , if the coordinating device was sending out an addressing message every 1/50 second, then a sleeping transmitter must wake for 1/50 second to determine if it is in range of that coordinating device . If it did this once a minute, then the radio interface would use only 1/300 of the power it would otherwise use . This is achieved at the expense of up to a one minute delay before a transponder' s position can be determined after it is back in range of the coordinating device .
Registration of new transponders as thev enter an environment
It is desirable for such a system to be able to cope with the introduction cf a previously "unknown" transponder unit without operator intervention . In this situation, there is- a requirement to indicate to the overall coordinating device that it must start to address the new transponder . This process will be referred to as a " registration" . It is merely necessary that the new transponder is compatible with and has a radio address which is one that would be expected and recognised by, the system .
In order to do this and in accordance with a preferred feature of the present invention, a bidirectional radio link is provided between a remote receiver and each transponder . Typically this is achieved by adding a radio transmitter to each transponder and adding a radio receiver to the master transmitter . Such transponders will be referred to as bi directional transponders . In one arrangement the coordinating device may for example transmit the radio receiver addresses in sequence of all possible bi-directional transponders , at regular intervals . The bi-directional transponder radio responses may be checked for radio responses from any new transponder addresses , and these addresses may then be added to the list of bi -directional transponder addresses which are to be scheduled, for position determination by subsequently triggering by radio their bi directional transponder so as to generate ultrasound signals .
In a more preferred arrangement a " Slotted ALOHA contention- resolution protocol " such as described by Roberts L in ALOHA Packet Systems With and Without Slots and Capture , Computer Communications Review, April 1975 , may be used to allow the transponder to identify its unique identification ( ID) to the coordinating device and establish its position in the schedule for the master transmitter .
This type of protocol is a probabilistic protocol which allows many transmitting and receiving devices to use the same radio channel to transmit at the same time . This allows a plurality of transponders to use the same radio channel to communicate with the coordinators and enter their ID' S into the schedule to be used by the master transmitter .
Preferably the contention-resolution protocol is performed until an indication is received from the master transmitter and/or its associated coordinator that location resources have been allocated to the new ID for that transponder transmitter .
This indication may be sent as part of the addressing message .
The indication may simply be a command to transmit or a separate acknowledgement f ield .
In either case , the transponder ' s unique radio receiver ID may be encoded in the message to show that the master transmitter and/or coordinator is aware of its presence .
Resource retrieval
This has been referred to above , and in accordance with another feature of the invention , " registration" may also be used in resource retrieval to prevent valuable resources being used unnecessaril .
Thus if a bi-directional transponder is moved to a location where its ultrasonic signal is undetectabie (e . g . i f it is placed in a box) , then the coordinating device may be programmed to reallocate the location resources that were are being used to track that device .
For example if no ultrasound signal from a bi -directional transponder has been detected after it has been addressed for say up to four times , the coordinating device may be programmed to set a " transmit " bit in the radio addressing message the next time it is transmitted by the master transmitter, so as to force a registration from the addressed transponder transmitter, whilst blocking registration attempts from any other bi-directional transponders .
If a radio reply from the bi -directional transponder transmitter is detected by the master radio receiver in response to a " transmit bit " , then the related obj ect mounted transponder is still in range of the master radio transmitter , and the absence of an ultrasound response either lies in a temporary shielding of the transponder or an electrical failure , (as opposed to movement of the obj ect ) , and the resource should not be reclaimed . In the example given the transponder may have been temporarily shadowed by ul trasound absorbing material .
I f no signal is , detected , then the next time that bi directional transponder i s addressed by the master radio transmitter the coordinating device may be programmed to set a special drop bit in the addressing message , to indicate that the location resources that are currently allocated to that transponder will be reclaimed, and the transponder concerned will not subsequently be addressed via the master transmitter radio link .
If the transponder radio receiver can receive this message , it must be in a location where it can receive radio signals from the master radio transmitter but the coordinator is unaware of its ultrasonic response . In this event the bi-directional transducer is programmed to perform the registration process described above , but in the meantime the coordinating device reclaims the now unused location resource associated with that ID, until such time as the transducer achieves registration .
The use of a drop bit dictates that the radio interface should be very reliable, since if a transponder were to miss a message telling it not to expect any more radio addressing transmissions this could result in the transponder not starting the registration process , and, without other intervention, no further position updates would be received for that transponder .
According to a preferred feature of the invention, each addressing message contains one or more sets of error- correcting or error-detecting bits in combination with a powerful checking algorithm ( e . g . CRC Check) .
If a transponder receives a message containing errors , it is programmed to assume that the message was destined for it , and that the drop bit was set , so that if a transponder receives such a message , it will immediately begin the registration- process .
Whether there are merely a number of independent but interlinked regional coordinators , or an overall coordinat ing device which sits above a plurality of regional coordinating devices , either the overall device or all of the regional coordinating devices (or both) may be programmed to remember the ID' S of any bi -directional transponders which have dropped out , and this fact may be compared with a look up table of data, indicating whether or not an alarm is to be raised and/or the absence noted in a display . For example in the case of an ID associated with a valuable piece of apparatus , a burglar alarm may be sounded, and exit down remotely locked .
Likewise , if an ID is discovered in a region in which it should not be (eg a person or a container of dangerous material ) then the overall coordinator (or the regional coordinators) may likewise be programmed to raise an alarm, bar access or exit , and/or display this in a display.
Transmission of additional information
According to another feature of the invention, input and output facilities may be provided on the transponders .
For example , in addition to the address of the device that is being requested to transmit the ultrasonic pulse , a radio message from a coordinating device may contain a number of data bits (an "Output Data Value " ) which may, for example , be sent to an output port on the addressed transponder, to control for example a display, or robotic device associated with that transponder .
The invention will now be described by way of example , with reference to the accompanying drawings , in which :
Figure 1 is a schematic diagram of a positioning system;
Figure 2 shows the FPGA conf iguration of the transmitter unit ,
Figure 3 s a schematic diagram of a mobile transmitter unit for the system of Figure 1 ;
Figure 4 shows the FPGA configuration of the mobile transmitter unit on the system of Figure 3 ;
Figure 5 is a simplified block schematic of the ultrasonic receiver unit ;
Figures 6A to 6C show how a standard ultrasonic receiver, such as shown in Figure 5 , operates as part of a transponder in the system of Figure 1 ;
Figure 7A to 7D show the operation of a modified ultrasound receiver, adapted to render it insensitive to spurious noise signals , in the system of Figure 1 ;
Figure 8 is a more details block schematic diagram of the ultrasound receiver such as shown in Figure 5 ;
Figure 9 shows how two transponders each incorporating standard ultrasound receivers can be mounted on a movable obj ect such as a chair to indicate rotational movement ;
Figure 10 shows how component redundancy in a two transponder arrangement such as shown in Figure 9 , can be reduced;
Figure 11 is a detailed block schematic of the single more complex receiver unit provided in the system of Figure 10 ;
Figures 12A and 12B are top (or bottom) and side view of ar. omnidirectional ultrasound source ;
Figure 13 illustrates a more directional ultrasound source ;
Figures 14A and 14B are top and side views of a transponder unit designed to be worn round the neck; Figure 14C is a view from above showing the directionality of the device shown in Figures 14A and 14B ;
Figure 15 is a view from above of the sound pattern which emanates from an omnidirectional ultrasound transducer (or transducer group) when attached to or partly obscured by an obj ect which is of acoustically opaque and/or absorbing material ;
Figure 16 is a side view of a person wearing a device such as shown in Figures 14A and 14B ;
Figure 17 is a top view of the person shown in Figure 16 ;
Figure 18 is a block schematic overview of a complete system incorporating the invention and also including a bi-directional radio link between the master transmitter unit and each of the addressed transponders ;
Figure 19 is a detailed block schematic of the clock generator in Figure 18 ;
Figure 20 is a detailed block schematic of a zone manager of Figure 18 ;
Figure 21 is a detailed block schematic of a matrix manager of Figure 18 ;
Figure 22 is a detailed block schematic of an ultrasound receiver such as is incorporated in each room of the system of Figure 13 ; and
Figure 23 is a detailed block schematic of a mobile transponder unit such as is mounted en obj ects in the rooms in the system of Figure 18 . Overview of the drawings
In the drawing a set of ultrasonic receiving elements are placed in a matrix on the ceil ing of rooms in which the system is installed, and ultrasonic transmitters are placed on the obj ects to be located .
An addressable radio link is used to allocate timeslots , transmit the synchronising timing pulse , and allow transmitting elements to communicate with a coordinating device , eg to register an initial presence .
Waves are used because their speed of propagation is very fast , and unknown delays in the radio link will be very small compared to the time -of - flight of , for example , ultrasonic pulses used to measure distances so that to a first approximation the measurements can be said to be synchronised, and the unknown errors will not significantly reduce the accuracy of the system .
Alternatively a wired network may be used between the fixed receiving elements to distribute a timing pulse . This has the advantage of being less prone to interference , and potentially of lower cost .
At least three receivers must detect valid signals for the system to be able to calculate the position of the transmitter , but if all the receiving elements are coplanar, there can be ambiguity about whether a transmitter is above or below the plane containing the detector - eg the ceiling of a room . This ambiguity can be resolved if it is known for example that all transmitters are always below the ceil ing .
The information gathered by this system can be used to automate computing and communicat ions equipment in an intelligent manner . By locating the pos ition of people and equipment for example in an off ice , hotel , hospital facility or home environment , it is possible for example to route phone calls , dispatch a printing j ob to the nearest printer, automatically identify the nearest visible screen to a user (for display of information requested by them) , and intelligently select camera views in videophone conversations .
Availability of fine-grain high resolution location information can allow new methods of human- computer interaction, e . g . connection of video and audio streams by bringing their endpoints into close physical proximity.
It may also be possible to use a transmitting unit as an input device , e . g . as a wireless mouse , a 3D pointer, or for three- dimensional gesture generation .
It may also be possible to use the information gathered by the system to detect motion (by observing changes in the position of an obj ect over time , or by Doppler methods) , and the presence of opaque obj ects (which may shadow receiver elements) , which can be deduced from patterns of reception of the distance measuring pulses .
Detailed description of the drawings
In Figure 1 , the position system operation is as follows :
1 . To f ind the position of a mobile transmitting device 10 , a PC 12 loads an 8 -bit address of the mobile device onto its parallel port .
2 . A transmitter controller, based around a Xilinx XC3020A FPGA ( the FPGA configuration is shown in Figure 2 ) and interfaced to the PC parallel port , reads this address f ive times a second, and generates a 40KHz data stream comprising a preamble and the address from the parallel bus of the PC .
3 . The 40 KHz data stream is FM encoded onto a 418MHz radio link by a Radiometrix BIM413 radio module 16.
4 . As the first bit of the preamble is generated by the transmitter controller, a signal from that controller commands an ADC 13 (HP E1413/A) to begin sampling at a rate of lOOKHz ( shared between all channels being sampled) .
5 . Mobile devices such as 10 described in detail in later Figures of the drawings located in the area covered by the system, pick up the preamble and 8 -bit address and compare the address with their own . If the addresses match, the mobile device in question transmits a 750 microsecond pulse of 40KHz ultrasound. Typically an array of five transducers is mounted on each device, typically in a hemispherical pattern (not shown) .
6 . The ultrasonic pulse is picked up by one or more ultrasonic receiver units of which four are shown at 20 , 22 , 24 and 26 . Those receiving the pulse process the signal in a manner described later before passing the processed signal to the ADC 18 , which is set to sample them when instructed.
7 . After the initial command to begin sampling, the ADC continues to sample at lO OKHz for 20 milliseconds and the samples values are stored . The stored sample values are passed over a serial interface to the PC 12 . K? Vee software is loaded into the PC to manage the sampled data, find signal peaks , determine transmitter-receiver distances , and calculate and position relative to the receivers of the mobile device that was addressed, using the algorithms described herein before .
The FPGA configuration of the transmitter controller of Figure 1 is detailed in Figure 2 .
In Figure 3 the operation of a mobile radio transmitter is as follows : 1. At power-up, the Xilinx XC3020ATPGA unit 23 downloads its configuration from a Xilinx 1736PC serial PROM 30 (the FPGA configuration is shown in Figure 4) . A PIC16C54 microcontroller 32 enables a Radiometrix BIM413 radio module 34 and a 4MHz Xilinx clock 36 (built around a 4MHz crystal and a 74HCT00 1C) .
2. The XC3020A unit 28 monitors incoming 40KHz received data until it detects a preamble and 8 -bit address. It then compares the received address with its own (stored in its serial PRCM) , and if the addresses are identical it drives five ultrasonic transducers such as (Farnell Electronics part No. 213-214) at 40KHz for 750 microseconds (of which one is shown at 38) .
3. The PIC16C54 microprocessor 32 then disables the BIM418 radio module 34 and 4MHz clock 36, and places the XC3020A unit 28 into pcwerdown mode, to save power, for 0.196 seconds. It then re-enables these components and step (2) is followed again.
Power is typically derived from two 3.6V half-AA lithium, thionyl chloride batteries, regulated to 5V by an LT1129 IC.
The FPGA configuration of the transmitter controller of Figure 3 is detailed in Figure 4.
The operation of the ultrasonic receiver shown in Figure 5 is as follows:
1. The ultrasonic signal is detected by an ultrasonic transducer such as a Farnell Electronics part No. 213-226 denoted by 40.
2. This signal is amplified (typically by a factor of 56) using an inverting amplifier 42. Typically this is built around one-quarter of a TL074 quad op-amp. 3 . The amplified signal is rectified using a full wave active rectifier 44 . Typically this is built around one-half o f a TL074 quad op-amp .
4 . The rectified, amplified signal is smoothed using an RC circuit 46 to obtain a signal which represents the envelope of a rectified version of the original signal .
5 . This signal is passed to the HP E1413/A ADC 18 (see Figure 1) via an RJ45 j ack plug and one wire of a four wire network, which also supplies the unit with +5V, -5V and GND power lines .
Standard receiver
A number of these are located at known locations around the environment (room) in the ultrasonic positioning system.
As shown in Figure 6 (A) , each receiver 47 is triggered by a central controller 48 across a network 50 . Following a timing or reset signal 49 , the receiver monitors signals from a 40KHz ultrasonic detector 52 for 20ms as depicted in Figure 6 (B) , and the time at which the incoming signal peaked for the first time is determined and held in the receiver . After the 20ms window closes , the central controller 48 polls each receiver across the network 50 as depicted at 54 and 56 in Figure 6 (C) , and retrieves the time value . The value from each receiver is either the time after the window opened at which the signal first peaked, or is zero (which indicates that no useful signal was detected) .
Reducing svstem response to spurious acoustic signals
To confer noise immunity a two channels and two ultrasonic detector are provided as shown in Figure 7 . The first detector 52 , and first channel 53 are sensitive to 40 kHz and the second, 60 , 62 to another frequency eg 25kH= . When the receiver is triggered, both channels are reset and monitor the incoming signals for 20ms , and determine the times (a, b) at which any received signals peak for the first time as shown in Figure 7 (B) .
The value b is checked and if greater than 0, the value of a is forced to 0, also , as shown in Figure 7 (C) . If b equals 0 , the value of a is available to be returned to the central controller .
When the central controller 48 polls each receiver 47 across the network is shown in Figure 7 (D) , and noted by 64 , the time value a from the first channel 52 , 58 is returned to the controller 48 , as denoted by 66 . If the second channel value b had been non- zero ( indicating that a spurious acoustic signal was detected) , then zero is returned to the controller from the first channel 52 , 58 .
Transponder design
A standard receiver- transmitter (transponder) unit 68 (such as item 10 in Figure 1) is shown in Figure 8 .
This comprises a radio receiver ( 1 ) which picks up encoded FM signals in the 418MHz band from a radio transmitter ( 16 in Figure 1) controlled by a central coordinating device 48 (not shown) .
These signals are passed through decoding logic 72 , which presents the address contained in any decoded message , to an address comparator 74 . If the latter identif es the address in the message as that of the transponder stored in ROM 76 , t triggers a signal generator 73 , which drives a set of ultrasonic transducers 30 to transmit an ultrasonic pulse .
Two such standard transponders 32 , 84 are shown in Figure 9 attached to two spaced apart points on a chair 86 . Since the two transponders 82, 84 contain similar duplicated components, an alternative arrangement is possible as shown in Figure 10. Here, a single receiver and control unit 83 drives two individually addressable ultrasonic transducer sets, mounted at the same points on the chair 86, 90, 92 as were the standard transponders 82, 84.
The alternative arrangement is shown in more detail in Figure 11. The unit 88 is made up of a radio receiver 94 which picks up the encoded FM signals in the 418MHz band from the central transmitter. These signals are passed through decoding logic 96, which presents the address contained in any message detected to an address comparator 98. The latter is associated with a lock-up table 100 containing in this case two rows 102, 104. Each row stores a transducer address and a port number (e.g. If transducer set 1 is attached to port 1, one of the rows will be the ordered pair (1,1) ) .
If the address comparator identifies that the address in a received radio message matches one of the transducer addresses in the look-up table 100 it triggers a signal generator 106. The address comparator also controls gates 108, 100, to direct the output of the signal generator 106 to the port identified by the port number in the received transducer address. It can be seen therefore that the number of radio receivers, decoders, comparators and signal generators required by a system where two or more ultrasonic transmitter transducers are to be mounted as single objects, can be reduced, with consequent economies .
Two groups of ultrasonic transducers 112, 114 are connected separately one to port 1 (controlled by gate 103) and the other to port 2 controlled by gate 110.
Introducing directionality into the transducers
Since ultrasonic transducers tend to produce a sound wave over a relatively small solid angle , and are therefore rather directional . A less directional transducer is shown in Figures 12A and 12B . This comprises a spherical body 116 from which protrude a plurality of regularly spaced transducers , one of which is shown at 118 in each of the views .
If the spherical unit 116 of Figures 12A and 123 is mounted so that its lower half is acoustically shielded, none of the lower transducers serves any useful purpose and could be omitted . Such a unit is shown in Figure 13 (C) , where the hemispherical body 120 carries transducers 122 .
The device 120 is shown mounted on a housing 124 which may contain electronic components making up the transponder . Less than half the number of transducers are required than in an omnidirectional source such as shown in Figures 12A, 12B .
Figure 14A shows a transponder 126 capable of being worn by a person around their neck for example on a chain 128 . As seen in Figure 14C, the ultrasonic transducers 130 can be arranged to give a relatively narrow beam 132 which will proj ect in front of the person 134 . By finding the position of the person 134 and the locations of the receivers (20 , 22 , 24 etc ' in Figure 1) at which the beam is detected, it is possible to deduce which way the person is facing .
Derivation of orientation information
Where the obj ects on which transponders omnidirectional ( standard) are attached are opaque or relatively opaque to ultrasound, it is possible to obtain information about the orientation of those obj ect s from the data collected by the receivers such as 20 , 22 etc in Figure 1 . Consider a transponder 136 attached to a known point 133 on such an obj ect 140 , as in Figure 15 . The opacity of the obj ect 140 ensures that the only sound energy 142 which can leave its vicinity does so in the direction 144 . This effect may be amplif ied i f the transmitter is itself directional to some degree.
By interrogating the receivers (20, 22 etc (Figure 17)) in an environment containing such an object and performing a calculation on the information they provide, the location system can calculate in three dimensions the position (x,y,z) of the transponder 136. The location system also knows the positions (u^v^ ... (un,vn,wn) of the n receivers that have detected the ultrasonic signal. Using the known location of the transponder on the object and the known locations of the receivers, the direction, relative to the object, in which the ultrasonic energy will have left its vicinity, can be deduced. Correlating these three items of information allows the object's orientation to be determined, where the position of point 138 relative to the object 140 is known.
An example of how this can be derived will be described with reference to Figures 16 and 17 which show a standing person 146, who can face in any direction and therefore be said to be rotatable about a vertical axis 148, relative to a horizontal array of receivers one of which is denoted by 150.
The person 146 is wearing a transponder 152 on a chain around his neck. In this case, the sound energy is directed in front of the person, with the middle of the beam lying in the same vertical plane as the direction in which they are facing. Figure 18 shows the person from above and the area in the horizontal plane over which sound energy will be radiated from the ultrasonic transducers on the transponder 152.
First it is necessary to compute the mean point of detection of the ultrasonic signal on the ceiling (ύ,v,w), given by Equations (5), (6) and (7) .
Secondly, the vector (a,b,c) is computed from the transponder to the mean point. The vector a, b, c, is computed using Equations 18, (9) and (10) . The vector (a, b, 0 ) usually can be taken to be a good estimate of the horizontal direction- of the middle of the sound beam leaving the obj ect ' s vicinity, and can be used to calculate the direction A, in which the person is orientated around a vertical axis (relative to some other horizontal direction specified by a vector (m, n, 0 ) .
The value of A in the range C --rr, τr] can be computed from the values of sinA and cosA given by Equations (11) and (12 ) .
The value of A can be used as an estimate of the direction in which the person is facing .
Figures 13 to 23 illustrate a position detection system embodying the invention and the separate parts making up the system.
Complete svstem
Figure 18 is a block schematic diagram of the complete system in which a Scheduling PC 154 dictates which one of a set of Mobile Transponders (one of which is shown at 156) are to be addressed in each of 25 timeslots per second. Addressing messages generated by the Scheduling PC are sent to Mobile Transponders via a Zone Manager 158 , which also passes registration messages from the Mobile Transponders 156 back to the Scheduling PC .
Ultrasonic signals generated by the addressed Mobile Transponders 156 in response to the addressing messages sent by the Zone Manager, are detected by a set of Receivers three of which are shown at 160 , 162 , 164 attached to a Matrix Manager 165. Typically, there will be one Matrix Manager and a set of Receivers per room (or other space in which ultrasound is confined) .
A Positioning PC 163 connected to the Matrix Manager 166 derives the air temperature of the' room in which the polled receivers are located via a thermometer 170 , and polls the Receivers 160 , 162 etc to retrieve the three measurements derived from the received ultrasonic signals , and uses this data, and the measurement of air temperature in the room 172 , to calculate the 3D position of the source of the ultrasonic signals .
A second set of receivers ( 174 , 176 , 178) in a second rom 180 are also shown, with associated matrix manager 182 and positioning PC 184 . Other similar set -ups can be provided for each room in a building, each linked to a central area manager 186.
Information from the Scheduling PC and the Positioning PCs is collated by an Area Manager 186 , which produces a stream of location events that may be sent to users or applications . In order to perform this collation, elements of the system must be synchronised - this is achieved using a 25Hz signal from a Clock Generator 188 and initialising PC 190.
Radio signals are transmitted to the mobile transponder radio receivers from a master radio transmitter/receiver unit 189 operating at 418 MHz with FM encoding .
Individual part of the system
( 1 ) Clock Generator (Figure 19 )
The Clock Generator 183 sends an accurate 25Hz clock pulse and global time value to the Zone Manager and the Matrix Managers across a serial network . The generator has a 25Hz 192 clock which drives a time store and counter 194 . The time store holds the current global t ime value , and the counter increments it with every pulse . An initial global time value may be loaded from a the PC 190 connected to the Clock Generator (see Figure 18 ) . After incrementing the current global time value, that value , and the clock pulse are gated to a serial network interface 196 , which distributes these signals to other system components , so as to synchronise them .
(2 ) Zone Manager (Figure 20 )
Each Zone Manager ( 158 , 166 , 182 etc in Figure 18 ) handles the radio interface between the Scheduling PC and the Mobile Transmitters . As shown in Figure 20 , it has a Data Store 198 which is filled by the Scheduling PC with the next packet to be transmitted . When this process is complete , the Zone Manager unasserts the "Ready" status line . On receipt of a clock pulse from the synchronisation network (200 ) along 202 , the Zone Manager stores the associated time in a Time Store , 204 , and triggers a Message Generator 206. The Message Generator sends a 136 -bit preamble followed by a Manchester- encoded copy of the stored packet at 40kbps to the transmit side of a 418MKz FM Radio Transceiver 208 , thus sending a DC- balanced copy of the desired message to the Mobile Transmitters .
After sending the message , the Zone Manager triggers a Message Decoder 210 , which looks at the incoming signals picked up by the receive side of the Transceiver 208 . Any incoming radio message sent by the radio transmitting section of the Mobile Transponder is decoded and error- checked, and if the message is valid it is stored in a Message Store 212 .
When time has been allowed for the outgoing message to be sent and any incoming messages to be detected, the Zone Manager asserts the "Ready" status l ine , indicating that the Scheduling PC can review the stored time and any stored message . To this end the scheduling PC controls Data Path Switch 214 to supply trigger tune ( from 204 ) and/or message ( from store 212 ) as appropriate , before loading the next packet to be transmitted . The global clock synchronisation network signals pass unchanged through the Zone Manager.
(3) Scheduling PC
The Scheduling PC 154 (Figure 18) is programmed to determine the order in which Mobile Transmitters should be addressed based on the Location Qualities of Service (LQoS) assigned to them (either statically, or dynamically by users and applications) . The Scheduling PC also constructs the packets to be sent to Mobile Transponders (via the Zone Managers) , and performs resource reclamation.
The algorithm used to choose the next Mobile Transmitter to be addressed is described in the sections above entitled "Schedule Implementation" .
Once the next Mobile Transmitter' s address has beer, determined, the Scheduling PC determines whether an application requires that an "Output Data Value" should be sent to that transmitter. It also determines whether applications have indicated that the transmitter is no longer responding to addressing messages (perhaps because it has been removed from the range of all the receivers in the room or building in the case of a multi- zone system) . If so, the transmit or drop bits in the next message should be set, to check the situation, or reclaim resources (as described above) .
The Scheduling PC also determines whether any Mobile Transmitters should be woken prematurely from a sleeping state, in which case the wake bit should be set. It also can acknowledge that a mobile transponder has beer, registered with the system whether this has been done by an operator, or an application according to data/time or data forcing the system to look for a particular mobile transponder address or has been achieved automatically. Two values, s (the score) and e (the Effective Location Quality of Service) associated with the Mobile Transponder to be addressed, and maintained by the scheduling algorithm, can be used to estimate a time for which that Mobile Transponder may go to sleep. It can be shown that, assuming the LQoS demands managed by the system do not change, the Mobile Transmitter will not be addressed in at least the next s t timeslots, given by Equation (13) .
A message packet is then constructed from the collected information. The packet has a number of Cyclic Redundancy Check (CRC) error checking codes embedded within it (the standard CRC-8 code is used) , and its format is given in Table (A) .
If no data value is to be sent to the Mobile Transponder, the Output Data Value field is set to 255. Similarly if no Mobile Transponder registrations require acknowledgement, the Registration Acknowledgement field is set to zero.
The message packet is loaded into the Zone Manager's Data Store in 8-bit chunks. After the last chunk is loaded, the
Scheduling PC start to continuously poll the Zone Manager's "Ready" status line. This line is asserted when the Zone Manager has transmitted any stored message where the radio receiver section of the transceiver 208 is being employed.
At this time, the Scheduling PC retrieves (from the Zone Manager) the time at which the transmission was made, and sends an event of the form (identifier, time) to the Area Manager across a CORBA interface (Object Management Group, The Common Object Request Broker; Architecture and Specification. Revision 1.1, OMG Document Number 91.12.1, December 1991), indicating the 16-bit identifier of the addressed Mobile Transmitter and the time of addressing.
Finally, the Scheduling PC retrieves from the Zone Manager any incoming message sent by the radio transmitter of the address Mobile Transponder (where - f itted and utilised) . Any such message will contain an address and button status bits . The Scheduling PC must deal with any registration request detected in this way, and/or inform any applications which are interested in "Button Pressed" events from Mobile Transponders .
It then identifies the address of the next Mobile Transmitter by repeating the scheduling process described in this section .
(4 ) Matrix Manager (Figure 21)
The Matrix Manager shown in Figure 21 resets ultrasound Receivers (eg 20 , 22 etc in Figure 1) connected to it , at a precise time, and acts as an interface between the Positioning PC and those Receivers .
On receipt of a clock puise along line 216 from the synchronisation network 200 , the Matrix Manager stores the associated time in a Time Store 218 , limits for 9 . 65ms to allow the radio message to be sent and sends a "Reset " signal over its Downstream Network Interface 220 to the ultrasound Receivers connected to it . After 20ms , the Matrix Manager asserts the "Results Ready" status line , which indicates to the Positioning PC that the Receivers will have made their measurements , and that the Positioning PC can now use the "Outgoing Data" bus to poll those Receivers to determine the results .
The Positioning PC can also retrieve the time at which the Receivers made their measurements by recovering the time held in the Time Store 218 . I t can also retrieve the latest measurement of the temperature in the room measured by a temperature sensor 222 , the output of which is continually digitised by ADC 224 and stored in memory 225 for retrieval for example when the Receivers are reset . The Positioning PC can also send commands to the ultrasound Receivers through the " Outgoing Data " bus to change the peak detection algorithm or thresholds used by the ul trasound Receivers .
When the Positioning PC asserts the " PC Ready" status line to indicate that it has performed all necessary actions associated with the current measurements , the Matrix Manager unasserts the "Result Ready" status line and prepares itself for the next clock pulse .
Data from the radio link ( if utilised) between transceiver 208 and the mobile transponders is received via the upstream Network Interface 228 and transferred when instructed to a Data Path Selector switch 230 ( Figure 20 ) together with the digital temperature value from 226 .
The global clock synchroni zation network signals pass unchanged through each Matrix Manager in turn .
( 5 ) Receiver ( Figure 22 )
The Receiver shown in Figure 22 detects ultrasonic signals from the transducer on the Mobile Transponders , and converts them to electric signals and processes those signals to determine the time at which the received acoustic signal peaked for the first time . Receivers are connected in a serial daisy-chain to a Matrix Manager by two networks - an upstream network, 232 which carries information to the Matrix Manager , and a downstream network 234 which carries information from the Matrix Manager . Each Receiver has an address which is unique amongst those connected to the same Matrix Manager , allowing it to be polled by the Posit ioning PC also connected to that Matrix Manager . The addres s may be coded for example by setting switches 235 on the ?C3s of the Receivers .
When a Receiver detects a " Reset " signal condit ion on the downstream network 234 , it resets an on-board counter 236 and peak detection circuit 238 . For the next 20ms , the counter is updated at a frequency of 20kHz , and the peak detection circuit monitors a signal from a 40kHz ultrasonic transducer which has been amplified in 242 , rect if ied in 244 , smoothed in 246 and digitized in 248 .
When the peak detection circuit indicates that the signal has peaked for the first time , counter 236 is stopped .
If the 20ms window closes before a peak is detected, the value 0 is formed in the counter .
After the 20ms period, the Receiver may be polled by the Positioning PC via the Matrix Manager and the downstream network 234 . If an address comparator 250 in the Receiver links to the switch coded address 235 detects that the Receiver is being polled, the stored value in the counter is sent back to the Positioning PC via the upstream network 232 and Matrix Manager, together with error- checking information . Incoming information from other Receivers on the upstream network is blocked during this period .
Additional lines on the downstream network 234 can be used by the Positioning PC to change the peak detection algorithm used by the Receiver . Two algorithms may be used :
* Stop the counter when the signal has risen above a certain absolute threshold and when the signal peaks for the f irst time . This is the default algorithm.
* Stop the counter when the signal has risen above a certain threshold relative to the lowest signal value seen so far . this algorithm is more useful when the offset of the Receiver amplifier is liable to change .
The threshold source may be a bank of switches 252 on the Receiver PCB, or a Threshold Memory 254 . The threshold source may, again, be changed by the Positioning PC by using lines on the downstream network . To set the value in the Threshold Memory 254 , the Positioning ?C sets the poll address on the downstream network to the new value , and then asserts further lines such that each of the Receivers load the poll address value into a Temporary Threshold Memory 256. The Positioning PC then sets the poll address on the downstream network to the address of the Receiver whose threshold must be altered, and asserts further downstream network lines to transfer the value from the Temporary Threshold Memory 252 into the Threshold Memory 254 of the appropriate Receiver .
( 6 ) Mobile Transponder (Figure 23 )
The Mobile Transponder shown in Figure 23 can be attached to obj ects , and generates ultrasonic signals 253 by which its position and possibly orientation can be determined .
Incoming radio messages from a Zone Manager are picked up by a 418MHz FM Radio Transceiver 260 and decoded by a Message Decoder 262 . The Message Decoder also uses error- checking information in the incoming messages to determine if bit errors on the radio link have occurred .
After the message has been received, the Power- Saving Supervisory Circuit 264 switches off the receive side of the Radio Transceiver 160 .
A Message Generator 266 allows the Mobile Transponder to contact the Zone Manager through the transmit side of the Radio Transceiver 260 . The Message Generator is used by a
Registration Controller 263 , which handles attempts to make the Zone Manager aware of the presence of the Mobile Transponder , and is also activated when a user presses one of two buttons 270 , 272 on the Transponder ( if f itted) . I f a good message is received , the Message Decoder compares the transmitter address contained in the incoming message with that stored in ROM 274 . I f the addresses match, then :
1 . A trigger signal is sent to a Pulse Signal Generator 276 , which drives a set of ultrasonic transducers 278 (arranged around a hemispherical shell ) at 40kHz for 50μs to produce the ultrasound pulse 258 .
2 . A counter in the Power-Saving Supervisory Circuit is loaded with the value of the sleep time in the message (via line 280 ) .
3 . If the drop bit in the message is set , a Registration Controller 282 on the mobile device is informed that the Zone Manager will no longer address this Mobile Transmitter . The Registration Controller will then begin attempts to register with the Zone Manager . If the drop bit is not set , but the Mobile Transmitter is attempting to register with the Zone Manager, the Registration Controller 282 is informed that the registration attempts were successful , and it need not attempt to register again.
4 . If the transmit bit in the message is set , the Mobile Transponder prepares to immediately transmit its address over its bidirectional radio interface (260 ) to 208 .
5 . The 8 -bit Output Data Value in the message is sent to a 10 - way data port on the Mobile Transponder (the port also includes a ground line , and a strobe line which indicates when the data is valid) .
If the Message Doctor indicates that the incoming message is not for the current transmitter, but that the Registration acknowledgement field contains the address of the current transmitter, then the Registration Controller 2S2 is informed that the Zone Manager is now aware of this Mobile Transponder, and that no more registration attempts are needed . After the incoming message has been decoded, the Mobile Transponder may attempt to send a data packet back to the Zone Manager through the transmit side of the 418MHz radio transceiver 260 . This behaviour may be caused by a number of events :
1 . The transmit bit in the incoming message was set , and the transmitter address encoded in the incoming message is the same as that of the Mobile Transponder .
2 . A button switch on the Mobile Transponder has been pressed .
3 . The Registration Controller 282 is attempting to register the Mobile Transponder with the Zone Manager, and the transmit bit of the incoming message is not set , and the probabilistic " Slotted ALOHA" contention-resolution protocol (driven by a pseudo-random number generator) indicates that the Mobile Transponder should attempt to send data to the Zone Manager in this timeslot .
If one of these events does occur, a message generator waits a 25μs turnaround time before switching on the transmit side of the Radio Transceiver 2 S0 , and sending (at 40kbps) a 168 -bit preamble followed by a Manchester-encoded version of the packet whose format is shown in Table (B) .
A Cyclic Redundancy Check code may be included in the packet to detect link errors or collisions with transmissions from other Mobile Transmitters . A standard CRC-S algorithm is used to generate the CRC .
After transmission of the preamble and packet , the Message Generator switches of f the transmit side of the Radio Transceiver 260 .
The Power-Saving Supervisory Circuit 264 is used to control other parts of the Mobile Transmitter in order to save power . It is driven by a 32kHz clock 284, which allows it to be low- powered itself. The prime function of this circuit is to turn on the receive side of the Radio Transceiver 260 every 40ms, so that the next incoming radio message from the Zone Manager may be detected and decoded. However, if the Sleep Counter is not zero (indicating that the Mobile Transponder may enter an even lower-powered sleeping state) , the Power-Saving Supervisory Circuit 264 decrements this counter once every 40ms, and only activates the receive circuitry of the Mobile Transmitter 260 once every eight timeslots (so that the wake bit periodically may be checked) . The Power-Saving Supervisory Circuit 264 also controls an 8MHz clock 265 which is used by the Message Decoder 262 and Message Generator 266.
If the Message Decoder 262 indicates that the wake bit in the incoming message was set, then the Power-Saving Supervisory Circuit 264 sets sleep counter 286 to zero. This action ensures that the transmitter will check each incoming message until it is instructed that it no longer needs to do so.
If the Message Decoder 266 indicates that an error occurred on the radio link, or that no message was received when one was expected, the Mobile Transponder will enter a "Searching" mode. In this mode, the low-power supervisory circuit switches on the receive side of the 418MHz Radio Transceiver 260 approximately once every 80s, for a period of just over one second, and the Registration Controller 282 is informed that it should attempt to register with the Zone Manager. The "Searching" mode is also the default state of the Mobile Transponder when it is switched on for the first time.
(7) Positioning PC
A 200MHz Pentium-pro IBM compatible PC with a 43 line parallel digital 10 card may be used and the same hardware is suitable for all PCs shown. Associated with each Matrix Manager is a Positioning PC 154, 168, 134 which computes the compositions of Mobile Transmitters from the time-of -flight values determined by Receivers 160, 1672 etc (whose surveyed positions are stored in memory by the Positioning PC) . It continuously polls the Matrix Manager to determine whether the Receivers have been triggered and have results which should be processed. When the "Results Ready" status line is asserted by the Matrix Manager, the Positioning PC (via the Matrix Manager) polls each of the n Receivers connected to the Matrix Manager, retrieves a data value from each (along with error checking information) , and unasserts the "PC Ready" status line.
For each Receiver that returns a good non-zero data value (ie. the error checking information indicates a good data value, which, being non-zero, indicates a signal was detected by that Receiver) , that data value is used to calculate a transmitter- receiver distance. The Positioning PC interrogates the Matrix Manager such as 166, 182 and determines the current temperature of the room, t (measured in °C) . It is then possible to calculate the speed of sound in the room, c, from Equation (14) .
Calibration of the system during installation provides a value, d, for the fixed delays in the system (such as the time taken to decode the radio message by the Mobile Transponder) . From the pulse time-of -flight , jfi, from the Mobile Transponder to Receiver i, the corresponding transponder-receiver distance can then be calculated, li as li = ex (f1 - d) .
If a Mobile Transponder is at the coordinates (u,v,w) and the distance from it to a Receiver at the coordinate (x,y,0) is _!, are that ail Receivers lie in the plane of the ceiling. It car- be shown that I2 is given by Equation 15.
Equation 1 can be regarded as a nonlinear model, see Myers, R. Classical and Modern Regression with Applications, PWS-KΞNT, 1990, and can use nonlinear regression to fit the values of l,χ and y for several Receivers to this model. This gives estimates u, v and w2. This allows the determination of a best least-squares estimate for the Mobile Transponder's position as the coordinate (ύ, v, -Vw2) , taking the negative square-root of w2 to fix the transponder below the ceiling. A shadow solution ( (u, v, -Vw) corresponds to an impossible transmitter position above the ceiling. The non-linear model has three degrees of freedom, and knowledge of at least three transponder-receiver distances is therefore required to calculate the Mobile Transponder's position. Furthermore, the model cannot be fitted to the data if all Receivers that detected a signal are collinear.
Reflected signals from objects in the environment can lead to incorrect distance measurements. Normally, the first signal peak detected by a Receiver will be due to a pulse travelling along a direct line from the transponder. This pulse will arrive before any reflected pulses, which must travel along longer paths. The distance thus measured by the system will be that of a straight line joining transponder and receiver. Occasionally, however, the direct path may be blocked, and the first received signal peak will be due to a reflected pulse. In this case, the measured transponder-receiver distance will be greater than the true distance, leading to an inaccurate estimate of the transponder's position.
Two techniques have been developed for identifying and eliminating inaccurate distance measurements. First the difference of two transponder-receiver distances cannot be greater than the distance between the Receivers. If, by comparing pairs of measurements, two Receivers are found whose results άc net satisfy this test, it can be stated that the larger of the two distances must be a measurement along a reflected path (remembering that reflections can only increase the measured distance) , and can discard that result from the data set . Secondly, a statistical test has been developed based upon the observation that the proportion of Receivers that detect only reflected signals is small . Studentized residuals (Glantz , S . , Slinker, B . Primer of Applied Regression and Analysis of Variance . McGraw-Hill , 1990 ) provide one method of identifying outliers in data sets , and can be calculated for each of the distance measurements during the nonlinear regression process . An incorrect measurement will be considered to be an outlier in the full set of measurements , and it is likely to have a large studentized residual . The result with the largest positive studentized residual is removed from the set of distance measurements (remembering, again, that reflections can only increase the measured distance) , before re-computing the nonlinear regression and residuals .
The statistical test is repeated until the variance of the remaining measurements fall below an acceptable threshold (suggesting that all outlying data points have been eliminated) , or only three measurements remain . A final calculation of the transmitter' s position is then made using those data values .
From the calculated position and the known locations of the Receivers that detected a signal from the Mobile Transmitter, it is also possible to estimate θ , the orientation of the Mobile Transmitter around a vertical axis . The method used to perform this estimation has been described above .
The Positioning PC then retrieves ( from the Matrix Manager) the time at which the measurements used in the position calculation were made . Finally, it sends an event of the form (x, y, z , ( , time) to the Area Manager across a CORBA interface , indicating the calculated position (x, y, z ) , orientation ( β ) and time of measurement , and informs the Matrix Manager that it is ready for the next set of readings (by asserting the " PC ready" status line) . It should be noted that the Positioning PC (163, 134) can send commands to individual Receivers (via the Matrix Manager) to change the peak detection algorithm they use, or to change the threshold they store in memory, or to change the source of the threshold that the peak detection algorithm uses (either onboard switches, or memory) .
(8) Area Manager (Figure 18)
As shown in Figure 18 data from the Scheduling and Positioning PC's is transmitted to the Area Manager 136 which comprises inter alia a data processor (such as a PC) . This gathers events of the form (identifier, time) from the Zone Manager, and events of the form (x,y,z, θ , time) from each Matrix Manager.
An associative memory in the Area Manager links events using the time parameter, and generates a stream of events of the form (identifier, x,y, z, θ , time) .
It can be seen that these events contain identification, location, orientation and time information, and therefore allow the position and orientation (at a particular time) of a transponder to be determined.
This event stream (shown at 288 in Figure 1) may be passed on to users and client applications.
Power saving at the receiver- ransmitter units
Power saving can be achieved in the transponders by switching the receiver into a quiescent or OFF mode during the time intervals between addressing, and if the frequency at which a particular transponder unit is to be addressed is known this can be encoded into the radio message so that after decoding the message the receiver section can be turned off for that period of time. Control signals using radio transmitters
Additional information in the form of control signals may be encoded into the radio addressing signals transmitted to the transponder units so as for example to control a display or robotic device, associated with the transponder unit.
Shape determination
Electrical signals indicative of the positions of a plurality of transmitters located at selected, strategic points on an object, may be derived and stored and processed, for example by comparison with stored electrical signal data or processed by means of an algorithm, to produce a decision signal indicative of the shape of the object. This may enable a new object to be identified by reference to its shape.
Display of monitored area
Electrical signals indicative of the position and/or orientation of an object whose position and orientation (relative to the area) have been determined by position determining systems, may be employed to control the display of a graphical representation of the object on a TV or computer monitor, together with graphical representations of other objects also identified by position (and orientation if measured) .

Claims

1 . A system which enables the position of each of a plurality of labelled obj ects in a specified environment to be determined by determining the transit time of slowly propagating energy transmitted from a transmitter on each labelled obj ect to a plurality of receivers positioned at fixed points in or around the specified environment , and computing therefrom the actual distance of the transmitter from the receivers , wherein the transmission of the slowly propagating energy is initiated by a burst of high speed propagating energy from a master transmitter located so as to cause transmitted bursts of such high speed energy to enter the said environment , the transmitter on the obj ect being controlled by a receiver adapted to respond to an appropriately encoded burst of such high speed energy, each said burst being encoded so as only to be responded to by one of the obj ect mounted receivers (each transmitter/receiver combination being referred to as a transponder) , to thereby initiate a burst of slowly propagating energy therefrom, and in order to allow the system to adapt to different numbers of transponders and different demands for service (for example frequency of position determination) , a coordinating control system is provided for determining the order in which the obj ect mounted transmitters are to be triggered by the encoded transmissions from the master transmitter, in response to updatable information relating to the service demands of the transmitter and/or transponders and/or obj ects .
2 . A system as claimed in claim 1 , in which each of the said plurality of receivers is adapted also to be responsive to each said burst of high speed energy so as to identify the beginning of each window of time within which a slow speed energy burst may arise and be received thereby .
3. A system as claimed in claim 1, in which the said plurality of receivers are reset and poled via a cable network.
4. A system as claimed in claim 1, 2 or 3, wherein the receivers include a latch to retain information about the time at which the beginning of the burst of slow speed energy is received after the beginning of each said time window.
5. A system as claimed in claim 1, 2, 3 or 4, wherein the receivers are scanned (ie poled) so as to recover the time information and reset the latches.
6. A system as claimed in any of claims 1 to 5, wherein computing means is provided to associate the time information with the receivers from which the time has been obtained and generate a transmit time for each receiver.
7. A system as claimed in claim 6, wherein the computing means is programmed to convert the transit times into distance values and using position data relating to the receivers stored in a memory, to compute therefrom the position of the object mounted transponder from each of the receivers and therefore by geometry, its position relative to one or more fixed points defining the specified environment.
8. A system as claimed in any of claims 1 to 7, wherein the encoding of the high speed energy transmission enables a plurality of different slow speed signal transmitters all located in the same specified environment to be triggered in turn, so that during a sequence of time windows, position data relating to each of the slow speed signal transponder transmitters in the environment can be obtained, the data in- each window relating specifically to one only of the object mounted transducer transmitters.
9. A system as claimed in any of claims 1 to 8 , wherein the slow speed signals are acoustic (preferably ultrasonic) signals, and the high speed signals are electric currents or voltages or visible or invisible electromagnetic radiation such as light, infra-red, ultra-violet or radio signals.
10. A system as claimed in any of claims 1 to 9, wherein the encoding of the high speed signals is by way of frequency or amplitude or phase modulation or pulse coding or any combination thereof.
11. A system as claimed in claim 10, wherein digital encoding technique are employed.
12. A system as claimed in any of claims 1 to 11, in which objects are located by multilateration, and wherein for each object that is to be located, the straight line distances are measured from a point on that object to a number of other points in the environment whose positions (in some frame of reference) are already known.
13. A system as claimed in any of claims 1 to 12, wherein after a first peak has been detected by a receiver of a transponder, all subsequent peaks arriving at that receiver are ignored.
14. A system as claimed in any of claims 9 to 13, wherein before transmitting a second slow speed signal, the system waits for reverberations of the previous distance measuring slow speed transmission to die out.
15. A detection system for determining information concerning at least the position of an object, using signal pulses respectively of high and slow propagation speeds for use in a system as claimed in any of claims 1 to 14, comprising at least three fixed, non-colinear, distributed slow speed signal responsive receivers, at least one transmitter unit for transmitting slow speed signal pulses, mounted on the object, means for generating and transmitting high speed signal pulses to synchronise slow speed signal pulse transmission from the transmitter with the commencement of a reception sensitive period at a receiver, and means for computing signal pulse reception times and correlating differences therein to determine the required information about the position of the obj ect .
16 . A detection system as claimed in claim 15 , wherein a separate transmitter is located on each of two or more obj ects in the specified environment , and each transmitter includes a high speed signal responsive receiver adapted to respond to only one of a plurality of high speed signals, and the separate transmitters are triggered in sequence by a transmitter of high speed signals which is adapted to transmit uniquely only one of the plurality of possible high speed signals at the beginning of each timeframe .
17 . A detection system as claimed in claim 15 or 16 , further comprising a coordinating device to address the obj ect mounted transmitters , as by sending address information to them as part of a regular time synchronisation signal .
18 . A detection system as claimed in claim 17 , further comprising a memory to store against each address an item of information which indicates the frequency of position changes for that address , as detected by the system during some predetermined period of time (which might be minutes , hours or days depending on the environment and the nature of the obj ect carrying the transmitter) , and the stored item of information is employed to determine how often the address is to be broadcast subsequently .
19 . A detection system as claimed in claim 18 , when programmed to increase or decrease frequency of transmission of each- unique address in response to changing values of the frequency position changes stored in the memory for each address .
20. A detection system as claimed in any of claims 1 to 19, wherein two transmitters are mounted on an object, spaced apart about an axis about which the object can rotate, and comparator means is provided for comparing the computed positions of the two transmitters with the known positions of receivers thereby to determine the orientation of the object relative to the said known positions.
21. A system for determining the position of an object in a specified environment, in which the transit time is determined of slowly propagating measurement energy transmitted from a transmitter on the object to a plurality of receivers positioned at fixed points in or around the specified environment, and in which the distance of the transmitter from each receiver is computed from the times taken for the measurement transmission to propagate from the object to some of the receivers, and wherein the slowly propagating measurement energy is initiated by a trigger burst of energy having a higher speed of propagation from a master transmitter which is located so as to transmit trigger bursts into the environment to initiate the measurement energy transmitter on the object of interest, and wherein a plurality of such transmitters are located on different objects and/or points of the same object, within the environment, and each transmitter of measurement energy is associated with and controlled by signals from a receiver responsive to trigger burst transmissions, and the latter are encoded and/or transmitted at different frequencies so that the receivers located throughout the environment can be individually addressed from the master transmitter, each said combination of a receiver and transmitter being referred to as a transponder, characterised in that a coordinating control system is provided for determining the order in which the object mounted transponder transmitters are to be addressed and triggered by the transmissions from the master transmitter, together with memory means for storing relevant information about the different transponder transmitters by reference to their unique address, by which the order can be determined .
22 . A system as claimed in claim 21 , wherein the coordinating control system memory means stores a unique address for each of the transponder transmitters and the control system is programmed to encode the transmissions using the address information so as to only to address the transponder transmitters individually .
23 . A system as claimed in claim 22 , in which in addition to the unique address for each transponder transmitter at least one additional item of information (Weighted Hierarchy Information for Schedule Positioning - or "WHISP" ) is stored in a manner which can be associated with each unique address and the control system is programmed to select from the addresses that of the receiver and transmitter next to be poled using the WHISP values to determine the order of addressing .
24 . A system as claimed in claim 21 or 22 or 23 , where the coordinating control system is separate from or formed as an integral part of the master transmitter.
25 . A system as claimed in either of claims 23 or 24 , wherein a WHISP is stored for each unique address and it is the WHISP which is changed to adj ust the subsequent addressing of the transponder transmitters .
26 . A system as claimed in claim 23 or 24 , wherein a set of standard WHISPs are stored and an association between each unique address and one of the standard WHISPs is stored for each unique address , so that an appropriate WHISP is linked to each unique address , whereby only the associations need to be changed so as to influence the subsequent addressing of the transponder transmitters .
27 . A system as claimed in any of claims 23 to 26 , wherein each WHISP is a simple logic 1 or 0 to indicate whether the transponder transmitter is to be addressed or not.
28. A system as claimed in any of claims 23 to 26, wherein each WHISP comprises a priority or weighting measure to determine the order or rate at which the transponder transmitter is to be addressed.
29. A system as claimed in any of claims 23 to 28, wherein each WHISP comprises two items of information, firstly the length of time since the transponder transmitter was last addressed (which may be continually updated by the clock information) and secondly a rate of interrogation figure to be achieved by the system for that transponder transmitter.
30. A system as claimed in any of claims 23 to 29, wherein the coordinating control system compiles a list of transponder transmitter to be addressed in a sequence by interrogating all of the unique addresses and their related WHISPs, and by compiling the order in which they are to be interrogated using the current WHISP information.
31. A method of assembling a list of addresses in a system as claimed in any of claims 23 to 30, wherein the coordinating control system creates a schedule of unique transponder transmitter addresses using the WHISP data, and arranges the order of the addresses in the schedule and therefore the order in which they are to be interrogated.
32. A method as claimed in claim 31, wherein the schedule is used to determine the encoding of each trigger burst from the master transmitter and the order in which the transponder transmitters are thereby interrogated.
33. A method of updating a list assembled in accordance with claim 31, wherein any changes which are required to be made to WHISP data are held over pending the end of the interrogation of the current schedule of addresses and the WHISP data is updated thereafter prior to the compilation of the next schedule .
34 . A method of updating a list assembled in accordance with claim 31 , wherein a change to a WHISP is permitted to interrupt the running of a particular schedule if a unique address associated with that WHISP is still to be interrogated, but is held over to update the WHISP data before the next schedule is compiled if the particular address has already been interrogated in the current schedule .
35 . A method of updating a list as claimed in claim 33 or 34 , which includes an emergency override to enable the transponder transmitter triggering according to a current schedule to be terminated and for a new schedule to be immediately compiled taking account of the WHISP change associated with, or entered with or after, the emergency override instruction.
36 . A method of scheduling transponder addresses in a system as claimed in any of claims 1 to 30 , comprising the steps of determining from all available data existing just before the next trigger transmission is due , the next transponder transmitter address which should be triggered, using a suitable algorithm and high speed processing .
37 . A system as claimed in any of claims 1 to 30 , wherein changes to WHISP data occurs as a result of a lapse of time , the arrival of a particular time or date , by interaction with an application running on a computer which may be part of the position determining system or the coordinating control system or another computer altogether, or by the entry of data by an operator for example to indicate that the system should cease its scheduled transponder transmitter position-determining function, and seek one particular transponder transmitter address .
38 . A system as claimed in any of claims 1 to 30 , or 37 , wherein environment related information is allowed to create an interruption to permit or cause WHISP data to. be altered, such as an increase or decrease in temperature, light level , sound level or the like , either within the environment or within a separately monitored environment , or by transducer originating signals linked to the movement of an obj ect either within the environment or otherwise , or by the opening of a door communicating between one environment and another .
39 . A system as claimed in any of claims 1 to 30 , 37 and 38 , wherein the movement of an obj ect within the monitored environment or in an adj oining environment is detected by means of a movement sensor such as a trembler switch, associated with the obj ect , and a radio or hard wired communication channel is provided between the sensor and the coordinating control system to alert the control system to the said movement .
40 . A system as claimed in any of claims 33 to 39 , wherein changes to WHISP data include changing the WHISP data stored in a unique memory means linked to one of the unique addresses , or changing the association between a transponder transmitter address and a plurality of standard WHISPs , depending on whether a separate WHISP is stored for each address or whether a number of standard WHISPs are stored and associations between them and the different transponder transmitter addresses , are stored against the addresses .
41 . A system wherein scheduling is performed in accordance with claim 36 , and the scheduler is adapted not only to determine the order in which the transponder transmitters are to be triggered, but also the rate of addressing for any one transponder transmitters .
42 . A system as claimed in claim 41 , wherein a fixed rate is associated with each transponder transmitter address , which is entered as a second item of information in each WHISP .
43. A system as claimed in claim 41, wherein a second item of information in each WHISP is an adjustable rate value, which is altered in relation to variations in a parameter monitored by a transducer or sensor.
44. A system as claimed in claim 43, wherein the parameter is temperature, light level, sound level or an operator adjustable value, or the time or the date.
45. A system as claimed in claim 44, wherein the rate parameter associated with each WHISP is a dynamic variable whose instantaneous value is determined by whether a variation has occurred in the detected position of a transponder transmitter carried by an object or not.
46. A method of reducing the data traffic in a system as claimed in any of claims 33 to 45, wherein means is provided for comparing the last noted position with the current noted position of each transponder transmitter and logic circuit means responsive to the comparator output reduces the frequency at which any one address is interrogated down to a relatively low level if no change is noted over a period of time in its transponder transmitter position, thereby reducing the data traffic on the system and allowing more time to be available for more frequent interrogation of address on objects which are moving .
47. A method of adjusting the frequency of addressing (tracking) of transponder transmitters in a system as claimed in any of claims 1 to 30 or 37 to 45, wherein the system is programmed to utilise a third item of data within a WHISP and logic circuit means is provided to increase the tracking of an address of a first object IF a second object having such a third item of information stored as part of its WHISP is perceived by the position determination of the second object, to have moved close to the first object.
48 . A location system which includes a set of ultrasound receivers placed at known positions on a ceiling in a room to detect ultrasonic signals from an ultrasound transmitter attached to an obj ect in the room, and by determining the times of flight of those signals from the ultrasonic transmitter to the ultrasound receivers so calculates in three dimensions the position of that obj ect in the room, wherein the system is extended by a programmable coordinating control system to address more than one ultrasonic transmitter in the room provided each has a unique address so that they can be triggered separately, by serially polling the transmitters in response to control signals from the control system.
49 . A location system as claimed in claim 48 , wherein in order to accurately measure the signal flight times , a central coordinating device triggers the ultrasound transmitter at the same time as a reset signal is sent to the ultrasound receivers , so as to achieve synchronisation between the transmitting and receiving elements of the system and wherein, to ensure that only one transmitter is triggered where two or more transmitters exist in the environment , each ultrasonic transmitter is controlled by a radio receiver and is triggered by the transmission of a suitable radio signal into the environment , and each receiver includes a unique address and the radio signal contains one such unique address during each said transmission, and upon receipt of the radio signal each radio receiver compares the transmitted address with its own, and if the addresses match, its ultrasonic transmitter is triggered to emit a short pulse of ultrasound .
50 . A location system as claimed in any of claims 1 to 30 , 37 to 45 or 48 or 49 , wherein the central coordinating device allows for reverberations and reflections of each transmitted pulse to die away so that the ultrasound receivers detect ultrasound from only one source , before triggering another ultrasonic transmitter .
51. A location system as claimed in claim 50, wherein the time between triggering is 20 milliseconds (preferably 40 milliseconds) and each such period is referred to as a timeslot and only transmitter can be interrogated and triggered within each such timeslot.
52. A location system as claimed in claim 48, 49, 50 or 51, wherein a group of transponder transmitters need to be interrogated in consecutive timeslots.
53. A location system as claimed in claim 52, wherein the positions of the transponder transmitters in the group are to be used to determine both the location and orientation of an object .
54. A method of tracking the movement of objects in an environment using a system as claimed in any of claims 1 to 30, 37 to 45 or 48 to 53, wherein the positions of two transmitters carried by the same object are stored and checked against subsequently determined positions of those transmitters to determine whether or not the object has moved.
55. A method as claimed in claim 54, insofar as it is dependent on claim 23 or any claim dependent therefrom wherein the two transmitters carried by the same object are identified as such with a further item of information in their associated WHISPs, and the control system is programmed to schedule the addressing of the second transmit thereon as soon as possible after the other has been triggered.
56. A method as claimed in claim 54, insofar as it is dependent on claim 23 or any claim dependent therefrom wherein a set of more than two transmitters are carried by an object and the control system is programmed to schedule the triggering of all the transmitters in the set in rapid succession so that any relative movement between position determination of each point, is minimised.
57 . A method as claimed in claim 56 , wherein a further item of information is included in each WHISP indicating whether the transponder concerned is a member of a set and if so which set , so as to assist the control system to identify the transmitter addresses which are to be triggered in rapid succession .
58 . Devices for use in a system as claimed in any of claims 1 to 57 , having at least two and preferably three transducers mounted thereon to permit the orientation (and any changes in orientation) of the device to be determined .
59 . Apparatus for performing a method of obj ect position determination or tracking as claimed in any of claims 31 to 36 , 46 to 47 , or 54 to 57 , comprising a master radio transmitter for transmitting short duration radio frequency trigger signals into an environment ; a plurality of radio receiver controlled ultrasound transmitter units located on obj ects throughout the environment , some or all of which obj ects may be movable ; a plurality of ultrasonic receivers located at fixed spaced apart points in the environment and adapted to receive ultrasound signals from the transmitters on the obj ects in the environment ; a coordinating control system adapted to cause the master transmitter to emit an appropriately encoded trigger signal to trigger one particular transmitter (if present in the environment) and cause it to emit ultrasonic radiation, and a computer based data processing system receptive of signals from the ultrasound receivers for determining from the transit times associated with those transmissions , the apparent line of sight distances of the transmitters from at least some of the receivers , and thereby from the geometry of the receivers the apparent position of the transmitter and therefore the obj ect in the environment ; memory means for storing position data for each identified transmitter obj ect combination; scheduling means for determining the encoding of the next radio trigger transmission and therefore the address of the next transmitter whose position is next to be interrogated, additional memory means for storing at least one additional item of information in association with the position data of each transmitter; a programmable data processing and/or logic means for determining from the said additional items of information and/or from at least one previously interrogated transmitter address, which transmitter address is to determine the next encoding of the radio trigger transmission.
60. A method as claimed in claim 59, comprising further memory means within which is stored data relating to the time at which each address was last interrogated, and the programme running in the processor controlling the said logic means is adapted to compare the information stored in each said further memory means with the WHISP data for all addresses suspected to be in the environment, thereby to determine which of the transmitters is next to be interrogated and to encode the next radio trigger signal accordingly.
61. A method of reducing the influence of spurious noise signals in position determining systems as claimed in any of claims 1 to 30, 37 to 45 and 48 to 53, wherein ultrasonic receivers are selected which are sensitive only to sound at and around one particular ultrasonic frequency and the bandwidth of the sound signal emitted by the ultrasound transmitters of the transponders is also limited to a narrow bandwidth around the same unique frequency, and sounds in the environment are monitored at at least one other frequency in the audible or ultrasonic range, at least for the same period of time as the receivers are enabled to monitor sound from an ultrasound transmitter of an addressed transponder, and a logic based system determines if a signal detected by a receiver at the unique frequency used by the transponder transmitter is accompanied by other sounds at at least one of the said different frequencies, such that if not, the detected signal is identified as being TRUE, and if accompanied by other sounds, the detected signal is identified as having been corrupted and is therefore labelled as FALSE.
62 . A method as claimed in claim 61 , wherein each ultrasound receiver includes at least two channels , one sensitive to sound signals at the ultrasound transmitter frequency and at least one other to sound signals at a substantially different frequency, and said logic circuit means is associated with each said receiver .
63 . A method as claimed in claim 61 , wherein at least one separate receiver is provided within the environment for monitoring sound signals at one or more frequencies different from that used by the transponder transmitter, and the logic circuit means is associated with the control system.
64 . A method as claimed in claim 63 , wherein a plurality of said separate receivers are provided at different points in the monitored environment and each responds to the same band of frequencies or they are adapted to respond to different bands of frequencies .
65 . A method of determining the position and orientation in a specified environment of an obj ect to which a plurality of transponder transmitters are attached at known spaced apart positions comprising the steps of finding the position of each of the said plurality of transmitters within the environment and comparing the positions of those transmitters with the coordinates of at least one , and preferably a number of , different known points in the said environment , thereby to determine the relative position of the transmitters to the known points , and relating the positions of the transmitters to the obj ect on which they are mounted, to determine its position and orientation relative to the environment .
66 . Apparatus for use in the method of claim 65 , wherein each- transmitter has its own independent triggering interface , controlling logic , and measurement energy transmitting transducer means .
67 . Apparatus for use in the method of claim 65 , wherein a single transponder receiver is provided together with decoding logic to drive a number of individually addressable measured energy transmitting transducer means , which latter are located at the said spaced apart positions on the obj ect .
68 . Apparatus as claimed in claim 67 , wherein the one transponder receiver will respond to more than one address but for each address only one of the transmitting transducer means is triggered, corresponding in each case to one of the spaced apart positions on the obj ect .
69 . Apparatus for performing the method of claim 65 , wherein at least one of the obj ects has mounted thereon a plurality of ultrasound transmitting transducer means , located at a corresponding plurality of different non-colinear positions on the obj ect , and a single radio receiver adapted to trigger one or another of the transducer means depending on an address code contained within a radio signal received thereby, so that the different transducer means may be triggered by appropriately coded radio signals , to transmit ultrasound signals into the environment at specific times , and from the different points on the object , to enable the unique positions of the said points on the obj ect to be determined and enable the orientation of the obj ect to be determined with reference to the monitored environment .
70 . Apparatus , and apparatus for use in methods or systems as claimed in any of claims 1 69 , wherein the transponder transmitter comprises two or more transmitting transducers facing in different directions so as to spread the transmitted energy in a generally non-directional manner, preferably ultrasound transducers .
71 . A method of determining the orientation of an obj ect in a position determining system or hen using apparatus as claimed in any of claims l ~ to 70 , in which a directional transmitter is mounted thereon in a known position relative to the obj ect so that energy is proj ected along a known axis relative to the obj ect , and the orientation thereof is determined by identifying the positions in the environment at which receivers are located which receive signals from the directional transmitter on the obj ect , and mapping those positions relative to the environment .
72 . Apparatus for use in the method of claim 71 , where the directional transmitter comprises a directional ultrasound transmitting transducer adapted to be mounted on an object whose orientation is to be determined.
73 . A method of reducing the power required to operate the transponder receivers in a system or apparatus as claimed in any of claims 1 to 72 , comprising the steps of transmitting to each transponder receiver information about the interval which is to occur between the transmission of addressing messages , and the receiver is turned off after each address message transmission is received, and switched on just before the next one is due .
74 . A method of reducing power requirements as claimed in claim 73 , wherein further power saving is achieved if the frequency with which a particular transponder is to be addressed by the coordinating device is determined by the coordinating device and the latter is programmed so as to be aware that the transmitter is not to be addressed for that amount of time , and the next message to the transponder receiver is encoded with that time information so that after decoding the message , the transponder is adapted to switch off its receiver section and operate in a so-called sleep mode for the amount of time transmitted in the encoded message .
75 . A method of reducing power requirements as claimed in claims 73 or 74 , in which a transponder operating in a sleep mode is adapted to be woken up . at short notice by the step of switching the receiver into normal mode at regular but well spaced points in time, synchronised with periods when the master transmitter will be transmitting a message and is further adapted to encode each such transmitted message in the spaced apart points in time, and the coordinating device introduces a data bit at the start of each such message known as a wake bit, to indicate that the sleeping transponder is to change state into its normal mode and if not present, that the receiver is to shut down again.
76. A method of reducing power as claimed in claim 75, wherein the receiver is switched into normal mode to check for a wake bit in the next message once every N seconds (where N can be any number including 1 and may be less than 1) .
77. A method as claimed in claim 75 or 76, wherein the wake bit forms part of an n bit message transmitted at the beginning of each transmission, whereby the sleeping transmitters can be separately identified and woken up accordingly, either individually or in groups by transmitting an appropriate code, so that if a sleeping transmitter receives such a message and if that message is applicable, it will change state and wake up, and from that time on check each addressing message from the coordinating device and master transmitter until such time as it is instructed to revert to its sleep mode again.
78. A method as claimed in any of claims 73 to 77, wherein further power can be saved if a transmitter does not receive an addressing message at the time when one is expected and the transponder is programmed to increase the duration of the sleep mode into which the receiver is then to revert before the receiver is triggered into normal receive mode again.
79. Apparatus for performing the method of claims 73 to 78, where each transponder includes a low power supervisory circuit for turning the radio receiver on and off.
80. A system or apparatus or method as claimed in any of claims 1 to 79 wherein a bi-directional link is provided between the coordinating control system and each transponder receiver by adding a second transmitter to each transponder receiver and adding a compatible receiver to the coordinating control system, such transponders being referred to as bidirectional transponders, whereby the latter are enable to transmit data to the coordinating control system.
81. A method of operating a system as claimed in claim 80, wherein the coordinating device transmits the receiver addresses of all possible bi-directional transponders in sequence, at regular intervals, and each transponder is instructed to transmit its address in response and the responses are checked for new addresses which are then added to the list of bi-directional transponder addresses which are to be scheduled, the process of adding an address to the list for scheduling being referred to as registration of the transponder address.
82. A system as claimed in claim 80, wherein during registration a slotted ALOHA contention-resolution protocol is used to allow each bi-directional transponder concerned ' to identify its unique identification to the coordinating device and establish its position in the schedule for the master transmitter/receiver unit.
83. A system as claimed in claim 82, wherein the contention- resolution protocol is performed until an indication is received from the master transmitter/receiver unit and/or its associated coordinating device, that location resources have been allocated to the new transponder address by the coordinator or the master transmitter/receiver unit.
84. A system as claimed in claim 82, wherein the said indication is sent as a part of the addressing message.
85 . A system as claimed in claim 82 , wherein the said indication is a command message to transmit , or the message is in the form of a separate acknowledgement field .
86 . A system as claimed in claim 84 or 85 , wherein the transponders unique receiver identification address is encoded in the message to show that the master transmitter and/or associated coordinating device is aware of the presence of the new address .
87 . A method of resource retrieval as applied to a system as claimed in any of claims 80 to 86 , wherein the coordinating device is programmed to re-allocate the location resources that are being employed to track a device if it fails to deliver an ultrasound transmission in response to a radio transmission trigger signal .
88 . A method as claimed in claim 87 , wherein the or coordinating device is programmed to set a transmit bit in the addressing message the next time it is transmitted by the master transmitter to a particular bi-directional transponder if no ultrasound signal from that transponder has been detected after it has been addressed for a predetermined number of times , and the transponder is programmed to instigate a registration procedure if it receives a transmit bit in an addressing message from its master transmitter .
89 . A method as claimed in claim 88 , wherein if a reply from the bi-directional transponder transmitter is detected by the master radio receiver in response to a transmit bit , the resource is not reclaimed .
90 . A method as claimed in claim 89 , wherein if no signal is detected in reply to a transmit bit command, then the next time that bi-directional transponder address is transmitted by the master transmitter, the coordinating device is programmed to set a special drop -bit in the addressing message to indicate that the location resources that are currently allocated to that transponder will be ' reclaimed, and the transponder concerned will not subsequently be addressed via the master transmitter link.
91. A method as claimed in claim 90, wherein each bidirectional transponder is programmed to react to a message containing a drop bit such that if received it will attempt to register its address with the coordinating device, but in the meantime the latter reclaims the now unused location resource associated with that address, until such time as the transponder achieves registration.
92. A system as claimed in any of claims 80 to 86, wherein each transmission of an addressing message contains one or more sets of error correcting or error detecting bits, and a checking algorithm such as CRC CHECK is employed.
93. A system as claimed in claim 92, wherein if a transponder receives a message containing errors it is programmed to assume that the message was destined for it, but that the drop bit was set so that on receipt of such a message it will immediately begin the registration process.
94. A system as claimed in any of claims 80 to 86 or 92 or 93, wherein the second transmitter is a radio transmitter and the compatible receiver is a radio receiver adapted to receive signals therefrom.
95. A system as claimed in any of the preceding claims, wherein each transponder further includes input and/or output facilities .
96. A system as claimed in claim 95, wherein additional data bits are included in a message from the coordinating device in addition to the address of the transponder that is being requested to transmit the ultrasonic pulse, and the transponder includes a decoder to derive from the additional data one or more control signals for activating or shutting down facilities associated with that transponder .
97 . A system as claimed in any of the preceding claims in which the coordinating control system determines the order in which measurement energy transmissions are to occur and/or the rate at which such transmissions are to occur .
98 . A system as claimed in any of the preceding claims , wherein signals indicative of the positions of transmitters located in an environment and associated with one obj ect therein are compared with stored information, or subj ected to an algorithm, to determine the shape of the obj ect .
99 . A system as claimed in any of the preceding claims , wherein signals indicative of the positions of transmitters in the said environment and associated with one obj ect , are employed to control the display of a graphical representation thereof in a television or computer monitor display.
100 . A system for detecting the position and/or orientation and/or movement and/or shape of obj ects constructed, arranged and/or adapted to operate substantially as herein described and with reference to the accompanying drawings .
101 . Methods of operating obj ect detection shape checking and obj ect displaying systems , for determining movement , saving power, reducing data traffic and operating ancillary facilities and organising the addresses of labelled obj ects to be detected, substantially as herein described and/or with reference to and as illustrated in the accompanying drawings .
102 . Transducer carrying device for use in detecting systems as claimed herein, constructed, arranged and adapted to operate substantially as herein described and/or with reference to and as illustrated in the accompanying drawings .
PCT/GB1997/003359 1996-12-04 1997-12-04 Detection system for determining positional and other information about objects WO1998028634A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE69711682T DE69711682T2 (en) 1996-12-04 1997-12-04 DETECTION SYSTEM FOR DETERMINING THE POSITION AND OTHER OBJECT-RELATED INFORMATION
US09/319,047 US6493649B1 (en) 1996-12-04 1997-12-04 Detection system for determining positional and other information about objects
AT97947785T ATE215701T1 (en) 1996-12-04 1997-12-04 DETECTION SYSTEM FOR DETERMINING POSITION AND OTHER OBJECT-RELATED INFORMATION
EP97947785A EP0943102B1 (en) 1996-12-04 1997-12-04 Detection system for determining positional and other information about objects

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9625208.5 1996-12-04
GBGB9625208.5A GB9625208D0 (en) 1996-12-04 1996-12-04 Detection system for determining information about objects

Publications (3)

Publication Number Publication Date
WO1998028634A2 true WO1998028634A2 (en) 1998-07-02
WO1998028634A3 WO1998028634A3 (en) 1998-08-27
WO1998028634B1 WO1998028634B1 (en) 1998-10-01

Family

ID=10803934

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB1997/003359 WO1998028634A2 (en) 1996-12-04 1997-12-04 Detection system for determining positional and other information about objects

Country Status (6)

Country Link
US (1) US6493649B1 (en)
EP (1) EP0943102B1 (en)
AT (1) ATE215701T1 (en)
DE (1) DE69711682T2 (en)
GB (2) GB9625208D0 (en)
WO (1) WO1998028634A2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2367618A (en) * 2000-09-29 2002-04-10 Roke Manor Research Acoustic / electromagnetic mobile telephone location system
EP0958504B1 (en) * 1997-12-04 2006-05-17 AT&T Istel Detection system for determining orientation information about objects
US7826800B2 (en) 2006-11-27 2010-11-02 Orthosoft Inc. Method and system for determining a time delay between transmission and reception of an RF signal in a noisy RF environment using phase detection
CN110873862A (en) * 2018-08-29 2020-03-10 苏州触达信息技术有限公司 Positioning system and method in predetermined space
RU2729459C1 (en) * 2020-02-05 2020-08-06 Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет имени В.Ф. Уткина" Method of determining spatial coordinates and speeds of objects using a scanning multiposition radio system

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2332055B (en) * 1997-12-04 2000-02-02 Olivetti Res Ltd Detection system for determining positional information about objects
GB2332054B (en) * 1997-12-04 2000-02-02 Olivetti Res Ltd Detection system for determining positional information about objects
GB9812635D0 (en) 1998-06-11 1998-08-12 Olivetti Telemedia Spa Location system
EP1018821A1 (en) * 1999-01-08 2000-07-12 TELEFONAKTIEBOLAGET L M ERICSSON (publ) Communication device and method
GB9901300D0 (en) * 1999-01-22 1999-03-10 Olivetti Research Ltd A method of increasing the capacity and addressing rate of an Ultrasonic location system
GB2360356A (en) * 2000-03-18 2001-09-19 Rupert William Meldrum Curwen Actuating an operation in accordance with location of a transponder
US20080303897A1 (en) * 2000-12-22 2008-12-11 Terahop Networks, Inc. Visually capturing and monitoring contents and events of cargo container
US8050625B2 (en) 2000-12-22 2011-11-01 Terahop Networks, Inc. Wireless reader tags (WRTs) with sensor components in asset monitoring and tracking systems
GB2372566A (en) * 2001-02-21 2002-08-28 At & T Lab Cambridge Ltd Sequential object location system with interrupt function
US6944428B2 (en) * 2001-08-06 2005-09-13 Kabushiki Kaisha Toshiba Image information input/output device and control system for the same using mobile device
GB0206766D0 (en) * 2002-03-22 2002-05-01 Koninkl Philips Electronics Nv Method of, and apparatus for, determining position
US20040006424A1 (en) * 2002-06-28 2004-01-08 Joyce Glenn J. Control system for tracking and targeting multiple autonomous objects
JP2004037239A (en) * 2002-07-03 2004-02-05 Fuji Heavy Ind Ltd Identical object judging method and system, and misregistration correcting method and system
US6933849B2 (en) * 2002-07-09 2005-08-23 Fred Sawyer Method and apparatus for tracking objects and people
JP4117781B2 (en) * 2002-08-30 2008-07-16 セイコーインスツル株式会社 Data transmission system and body-mounted communication device
US7880684B2 (en) * 2002-12-16 2011-02-01 Next-Rf, Inc. Small aperture broadband localizing system
JP4201254B2 (en) * 2003-01-24 2008-12-24 セイコーインスツル株式会社 Data transmission system and body-mounted communication device
US6977587B2 (en) * 2003-07-09 2005-12-20 Hewlett-Packard Development Company, L.P. Location aware device
DE10339581A1 (en) * 2003-08-28 2005-03-24 Teltix Gmbh Positioning method/device for locating a source emitting electromagnetic radiation uses interfaces to detect a position and to exchange data about locating reference and target sources
JP2005179026A (en) * 2003-12-22 2005-07-07 Toshiba Corp Equipment management system
US7760092B1 (en) * 2003-12-23 2010-07-20 Jason Matthew Hanania Discreet information system
US8406341B2 (en) 2004-01-23 2013-03-26 The Nielsen Company (Us), Llc Variable encoding and detection apparatus and methods
US7295108B2 (en) * 2004-03-22 2007-11-13 Symx Systems, Inc. Active RFID tag utilizing a secondary communication mode
US7982601B2 (en) * 2004-03-22 2011-07-19 Innovation Law Group, Ltd. Multi-modal active RFID tag with biometric sensors, systems and methods of ITV tracking
ES2249122B1 (en) * 2004-03-26 2006-11-16 Universidad De Cadiz ULTRASOUND MEASUREMENT SYSTEM OF PHYSICAL AND SPORTS ACTIVITY.
WO2006037014A2 (en) 2004-09-27 2006-04-06 Nielsen Media Research, Inc. Methods and apparatus for using location information to manage spillover in an audience monitoring system
EP1669775A1 (en) * 2004-12-08 2006-06-14 Nederlandse Organisatie voor toegepast-natuurwetenschappelijk Onderzoek TNO Method and system for determining the location and/or speed of at least one swimmer
WO2006099612A2 (en) 2005-03-17 2006-09-21 Nielsen Media Research, Inc. Methods and apparatus for using audience member behavior information to determine compliance with audience measurement system usage requirements
DE102005056231A1 (en) * 2005-11-25 2007-06-06 Bayerische Motoren Werke Ag Electrically driven vehicle part`s e.g. steering column, function controlling method for use at conveyor belt, involves determining elapsed times of ultrasonic signal that depend on momentary position of backrest and seat cushion
US7315768B2 (en) * 2006-02-15 2008-01-01 International Business Machines Corporation Remote monitoring and servicing of computer data centers
US7984003B2 (en) * 2006-07-21 2011-07-19 Nathaniel Williams Method and system for automated learning through repetition
US20080139929A1 (en) * 2006-12-06 2008-06-12 General Electric Company System and method for tracking an invasive surgical instrument while imaging a patient
US7546477B2 (en) * 2006-12-29 2009-06-09 General Electric Company Wake interval adjustment based on charge level
US10885543B1 (en) 2006-12-29 2021-01-05 The Nielsen Company (Us), Llc Systems and methods to pre-scale media content to facilitate audience measurement
US8054160B2 (en) * 2007-03-09 2011-11-08 Innovation Law Group, Ltd. RFID tag power conservation system and method
US7937068B2 (en) * 2007-08-23 2011-05-03 Motorola Solutions, Inc. Emergency dispatch management and prioritization of communication resources
US20090150217A1 (en) 2007-11-02 2009-06-11 Luff Robert A Methods and apparatus to perform consumer surveys
GB2457030B (en) * 2008-01-30 2012-02-29 Performance Designed Products Ltd Methods and apparatus for filtering noise in a three-dimensional position measurement system
US8315237B2 (en) * 2008-10-29 2012-11-20 Google Inc. Managing and monitoring emergency services sector resources
US9288268B2 (en) * 2008-06-30 2016-03-15 The Nielsen Company (Us), Llc Methods and apparatus to monitor shoppers in a retail environment
US8275404B2 (en) * 2008-10-29 2012-09-25 Google Inc. Managing and monitoring emergency services sector resources
US8705523B2 (en) 2009-02-05 2014-04-22 Google Inc. Conjoined class-based networking
US8239277B2 (en) 2009-03-31 2012-08-07 The Nielsen Company (Us), Llc Method, medium, and system to monitor shoppers in a retail or commercial establishment
US9151822B2 (en) * 2009-12-31 2015-10-06 Optimal Ranging, Inc. Precise positioning using a distributed sensor network
WO2012091726A1 (en) * 2010-12-30 2012-07-05 Optimal Ranging, Inc. Precise positioning using a distributed sensor network
US8855101B2 (en) * 2010-03-09 2014-10-07 The Nielsen Company (Us), Llc Methods, systems, and apparatus to synchronize actions of audio source monitors
US8885842B2 (en) 2010-12-14 2014-11-11 The Nielsen Company (Us), Llc Methods and apparatus to determine locations of audience members
US10102334B2 (en) 2010-12-30 2018-10-16 Given Imaging Ltd. System and method for automatic navigation of a capsule based on image stream captured in-vivo
US8278779B2 (en) 2011-02-07 2012-10-02 General Electric Company System and method for providing redundant power to a device
EP2691142B1 (en) * 2011-03-22 2020-07-29 Given Imaging Ltd. Systems and methods for synchronizing between an in-vivo device and a localization system
WO2012148390A1 (en) * 2011-04-27 2012-11-01 Empire Technology Development Llc Measurement of 3d coordinates of transmitter
RU2467349C1 (en) * 2011-10-05 2012-11-20 Виктор Леонидович Семенов Rls for measurement of initial speed of projectile installed on weapon barrel
US8442758B1 (en) * 2012-02-27 2013-05-14 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for a vehicle smart calendar
US8532921B1 (en) 2012-02-27 2013-09-10 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for determining available providers
US8594861B2 (en) 2012-02-27 2013-11-26 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for communicating with a vehicle user
CN102721942A (en) * 2012-06-29 2012-10-10 中国科学院声学研究所 Acoustic positioning system and acoustic positioning method for object in building environment
CN104641248A (en) * 2012-09-06 2015-05-20 三立方有限公司 Position and behavioral tracking system and uses thereof
US9021516B2 (en) 2013-03-01 2015-04-28 The Nielsen Company (Us), Llc Methods and systems for reducing spillover by measuring a crest factor
US9118960B2 (en) 2013-03-08 2015-08-25 The Nielsen Company (Us), Llc Methods and systems for reducing spillover by detecting signal distortion
US9219969B2 (en) 2013-03-13 2015-12-22 The Nielsen Company (Us), Llc Methods and systems for reducing spillover by analyzing sound pressure levels
US9191704B2 (en) 2013-03-14 2015-11-17 The Nielsen Company (Us), Llc Methods and systems for reducing crediting errors due to spillover using audio codes and/or signatures
RU2515580C1 (en) * 2013-03-20 2014-05-10 Сергей Михайлович Мужичек Method to measure external ballistic characteristics of projectile and device for its realisation
US9247273B2 (en) 2013-06-25 2016-01-26 The Nielsen Company (Us), Llc Methods and apparatus to characterize households with media meter data
US9112790B2 (en) 2013-06-25 2015-08-18 Google Inc. Fabric network
US9817104B2 (en) * 2013-06-27 2017-11-14 Kabushiki Kaisha Toshiba Apparatus, method and program for spatial position measurement
US9225858B2 (en) 2013-09-30 2015-12-29 Lexmark International, Inc. Systems and methods for location-aware imaging devices
US9426525B2 (en) 2013-12-31 2016-08-23 The Nielsen Company (Us), Llc. Methods and apparatus to count people in an audience
US10083459B2 (en) 2014-02-11 2018-09-25 The Nielsen Company (Us), Llc Methods and apparatus to generate a media rank
US9680583B2 (en) 2015-03-30 2017-06-13 The Nielsen Company (Us), Llc Methods and apparatus to report reference media data to multiple data collection facilities
US9924224B2 (en) 2015-04-03 2018-03-20 The Nielsen Company (Us), Llc Methods and apparatus to determine a state of a media presentation device
US9848222B2 (en) 2015-07-15 2017-12-19 The Nielsen Company (Us), Llc Methods and apparatus to detect spillover
WO2017204802A1 (en) * 2016-05-25 2017-11-30 Chirp Microsystems, Inc. Ultrasonic beacon tracking
US11686804B2 (en) 2016-05-25 2023-06-27 Invensense, Inc. Ultrasonic range sensing enables measured social contact
US10794868B2 (en) * 2017-04-03 2020-10-06 Consumer Lighting (U.S.), Llc Method and system for multi-channel acoustic communication and sensing
WO2019110733A1 (en) * 2017-12-06 2019-06-13 Teade Oü A self-organizing node and a sensor network with self-organizing nodes
EP3726241A1 (en) * 2019-04-19 2020-10-21 Siemens Mobility GmbH Method and system for locating an object

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3777305A (en) * 1972-04-10 1973-12-04 Us Navy Ultrasonic angle measurement system
WO1988001392A2 (en) * 1986-08-20 1988-02-25 The Mitre Corporation Ranging and processing satellite system for mobile surveillance and data link
US4853863A (en) * 1987-04-17 1989-08-01 Edwin Cohen Device to measure the relative position and attitude of two bodies
EP0485879A2 (en) * 1990-11-13 1992-05-20 Robert Bosch Gmbh Method and device for determining the position of vehicles in a driverless transport system
US5359575A (en) * 1993-09-08 1994-10-25 The Laitram Corporation Underwater pulse tracking system
WO1995014241A1 (en) * 1993-11-15 1995-05-26 Wybron, Inc. Tracking system
WO1995027963A1 (en) * 1994-04-11 1995-10-19 Lew, Helen Method and system for obtaining information from a plurality of remote stations
GB2298098A (en) * 1995-02-14 1996-08-21 Tagware Ltd Coded tag identification and location

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4862152A (en) * 1985-01-25 1989-08-29 Milner Ronald E Sonic positioning device
IE62672B1 (en) * 1990-10-22 1995-02-22 Logitech Inc Ultrasonic position locating method and apparatus therefor
US5550726A (en) * 1992-10-08 1996-08-27 Ushio U-Tech Inc. Automatic control system for lighting projector
JPH0996672A (en) * 1995-09-29 1997-04-08 Sukuuea:Kk Method and system for generating three-dimensional positional data
IL121068A (en) * 1997-06-12 2000-11-21 Visonic Ltd Method and apparatus for detecting the presence of a moving object in a detection area

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3777305A (en) * 1972-04-10 1973-12-04 Us Navy Ultrasonic angle measurement system
WO1988001392A2 (en) * 1986-08-20 1988-02-25 The Mitre Corporation Ranging and processing satellite system for mobile surveillance and data link
US4853863A (en) * 1987-04-17 1989-08-01 Edwin Cohen Device to measure the relative position and attitude of two bodies
EP0485879A2 (en) * 1990-11-13 1992-05-20 Robert Bosch Gmbh Method and device for determining the position of vehicles in a driverless transport system
US5359575A (en) * 1993-09-08 1994-10-25 The Laitram Corporation Underwater pulse tracking system
WO1995014241A1 (en) * 1993-11-15 1995-05-26 Wybron, Inc. Tracking system
WO1995027963A1 (en) * 1994-04-11 1995-10-19 Lew, Helen Method and system for obtaining information from a plurality of remote stations
GB2298098A (en) * 1995-02-14 1996-08-21 Tagware Ltd Coded tag identification and location

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0958504B1 (en) * 1997-12-04 2006-05-17 AT&T Istel Detection system for determining orientation information about objects
GB2367618A (en) * 2000-09-29 2002-04-10 Roke Manor Research Acoustic / electromagnetic mobile telephone location system
GB2367618B (en) * 2000-09-29 2004-12-22 Roke Manor Research Improvements in or relating to mobile telecommunications
US7826800B2 (en) 2006-11-27 2010-11-02 Orthosoft Inc. Method and system for determining a time delay between transmission and reception of an RF signal in a noisy RF environment using phase detection
CN110873862A (en) * 2018-08-29 2020-03-10 苏州触达信息技术有限公司 Positioning system and method in predetermined space
RU2729459C1 (en) * 2020-02-05 2020-08-06 Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет имени В.Ф. Уткина" Method of determining spatial coordinates and speeds of objects using a scanning multiposition radio system

Also Published As

Publication number Publication date
GB9625208D0 (en) 1997-01-22
US6493649B1 (en) 2002-12-10
DE69711682T2 (en) 2002-11-14
GB2320089A (en) 1998-06-10
WO1998028634A3 (en) 1998-08-27
GB9725760D0 (en) 1998-02-04
EP0943102A1 (en) 1999-09-22
GB2320089B (en) 2001-06-20
EP0943102B1 (en) 2002-04-03
DE69711682D1 (en) 2002-05-08
ATE215701T1 (en) 2002-04-15

Similar Documents

Publication Publication Date Title
EP0943102B1 (en) Detection system for determining positional and other information about objects
EP1034441B1 (en) Detection system for determining positional and other information about objects
EP0958504B1 (en) Detection system for determining orientation information about objects
US6553013B1 (en) Detection system for determining positional information about objects
EP1022583B1 (en) A method of increasing the capacity and addressing rate of an ultrasonic location system
US6470002B1 (en) Detection system for determining positional information about objects
Ward Sensor driven computing
US7023356B2 (en) System and method for monitoring individuals and objects associated with wireless identification tags
US6567005B2 (en) Method of and apparatus for actuating an operation
WO2004051303A1 (en) Ultrasonic locating system
EP0813040A2 (en) Precision spatial mapping with combined video and infrared signals
US11816524B2 (en) Indoor tag location detection system
GB2332055A (en) Detection system for determining positional information about objects
GB2332054A (en) Detection system for determining location information about objects
CA2460720C (en) Ultrasonic locator system and method
GB2354073A (en) Detection system for determining position and orientation of objects
JP3337586B2 (en) Moving object position detection system
Chen et al. Precision and accuracy in an indoor localization system
JPH01206279A (en) Position searching system
JPH10293886A (en) Human body recognition system
Computing A New Location Technique for the Active Office

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): KR SG US

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): KR SG US

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1997947785

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 09319047

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 1997947785

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1997947785

Country of ref document: EP