GB2354073A - Detection system for determining position and orientation of objects - Google Patents
Detection system for determining position and orientation of objects Download PDFInfo
- Publication number
- GB2354073A GB2354073A GB0028651A GB0028651A GB2354073A GB 2354073 A GB2354073 A GB 2354073A GB 0028651 A GB0028651 A GB 0028651A GB 0028651 A GB0028651 A GB 0028651A GB 2354073 A GB2354073 A GB 2354073A
- Authority
- GB
- United Kingdom
- Prior art keywords
- transponder
- transmitter
- address
- receiver
- environment
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Systems for determining distance or velocity not using reflection or reradiation
- G01S11/16—Systems for determining distance or velocity not using reflection or reradiation using difference in transit time between electrical and acoustic signals
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
- G01S15/87—Combinations of sonar systems
- G01S15/876—Combination of several spaced transmitters or receivers of known location for determining the position of a transponder or a reflector
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/18—Position-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/186—Determination of attitude
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/18—Position-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/30—Determining absolute distances from a plurality of spaced points of known location
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)
Abstract
The system tracks the position of each of a plurality of objects by determining the transit time of ultrasound signals from a transmitter on each object to a plurality of ultrasound receivers positioned at fixed points and computing therefrom the distance of the transmitter from the receivers. The ultrasound transmissions are initiated by radio signals from a master transmitter. Each ultrasound transmitter/radio receiver combination on an object is referred to as a transponder. The system can adapt to different numbers of transponders and differing demands for service (eg frequency of position determination per transponder-transmitter). A 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. The control system may include a memory for storing information about the different transponders with reference to their radio addresses, by which the order can be determined. The system can also determine object orientation by monitoring the positions of two transponders at spaced apart locations on an object and comparing their positions. It is preferable to address the two or more transponders on the object in succession.
Description
2354073 0 e) C- NT4 T ki sJ Title Detection System for Determining
Positionwl andabiver r, k- Oblec s
Field of the Invention
This invention relates to a detection system for determining information concerning the location of objects, and which can be extended to determine movement and orientation and even physical parameters such as shape of obj ects in a specif ied environment. The invention can be applied to people and animals as well as inanimate objects such as furniture, machines, vehicles, equipment and the like, and in this connection object is intended to include any movable entity.
2 Background to the Invention
Location systems are known which allow the Presence or absence of an object 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 object is located.
EP 0485679 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.
W095/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 emplo-ked to determine distance and position.
These systems do not measure characteristics other than position and are limited with regard to the number of objects which can be tracked due to the length of time needed f or each ultrasound transmission to die away, which is inherent in any such system, and it is an object of the present invention to provide a detection system capable of tracking more objects, which can be modified to allow orientation, rotational movement and linear movement to be determined and tracked and will further allow f or control of operable devices on or associated with the object.
3 The Invention A system embodying the invention enables the position of each of a plurality of labelled objects in a specified environment to be determined by determining the' transit time of slowly propagating energy transmitted from a transmitter on each labelled object, 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, 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 refferred to as a transponder) and in order to allow the system to. adapt to different numbers of transponders and differing demands for service (eg frequency of position determination per transponder or object), a coordinating control system is provided for determining the order in whi ch the object mounted transmitter/receiver combinations are to be addressed and triggered by the transmissions f rom the master transmitter, in response to updatableinformation relating to the objects and related service demands.? Preferably -each of the said plurality -of receivers is'.adapted also to be responsive to said burst of hiah sT)eed.energy, so as to identify the beginning of a window of time within which a slow speed energy 'burst --may a:ise-and be rece'ived--tliereby.
The burst may be the 'same burst'.. as is sent -to trigger -one of the transmitter/receiver units"triansponders to a slowly propagating wave, for time -measurement.
Alternatively the said:plur- 'al it'.Y"of'receivers may be 'connected 4 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 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.
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 environmient. can be obtained, the data in eachwindow -relating specifically to one only of the object mounted transponders.
Typically the slow speed.signals are acoustic or ultrasonic signals -and the high speed.. signals..are electric currents or voltage.or visible.or invisible electromagnetic radiation such as IR, uv or radio signals.
Encoding.of the high. speed signals. 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 Dlaced 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 lor with known time offsets). If the one-way delay in two media are dt, and dt, then D= dt,-dt, and if the (predictable) velocities of propagation in the two media are v, and v., and the distance between transmitter and receiver is R, then D/(2/Vl-'/V2) R It may be seen that.--if:.v2, is much greater than v,., -then the range calculation can be approximated by R- Dv Thus, if, for example,.. radio and ultrasonic signals are transmitted simultaneously through space then: the -equation 6 R = Dv, 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 'Last 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 be-fore 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 directpath 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 rebeivers will have detected n6 signal from the transponder transmitter, due to obstructions, directionality of the transmittirig-:'- 'element, -etc. -:- These receivers must be excluded trom further'cons iderat ion.
7 It is also possible that the first pulse detected by a receiver is a reflected or diffracted 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 small 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.
If 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-:d6 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-line dist ance..
Distance computation and-position fixing Having performed this algorithm, the system may be adapted to attempt to fit a non-linear regression model to the remaining distances, by performing an iterative regression computation on the data.
If this fails to converge, the system may be programmed to report that it. is unable to calculate the position of the transmitter usingthe available data.
if the iteration convergesf 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 first excluded from consideration. 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 sufficiently small.
This process is of course -only valid if a large enough number of signals/receivers still remain when the small variance is noted.
At any stage in this process, it may be f ound 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 distancemeasuring 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:, trarisponder transmitter unit for transmitting slow speed-.signal pulses, mounted on the object, means. for generating and. transmitting high speed signal...pulse.s to synchronise -signal _pulse O 10 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 respondto 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 transr)onder 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 transmittirs 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 sDace.
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 slow speed'signal transmitters, each with their own high speed signal receiver and unique address, could "be 'pla6ed on the object. 9 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 timieslot 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. Allthe 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 t--ansmits a slowtransmission- 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 frequbncy of movements of the address within the space, the coordinating device can respond appropriately and increase or decrease the.frequency of transmissions..of..-t.he address -received.
12 The system can also be used to determine the true orientation of an object, by comparing the position of two or more transponder transmitters mounted on the object.
If an object is rigid and stationary (or moving slowly or predictably enough) and a number of transmitting elements are placed at known points on the object, the positions of all the transmitters can be found in three dimensions. Since the fixed spatial relationship between the transmitters on the object is known, as well as their measured positions in three dimensions, it is also possible to determine the orientation of the object.
Depending on the knowledge of the capability of movement of an object, one or more transponder transmitters located thereon will enable the position and orientation of the object to be determined. Thus an object mounted for rotation about a fixed axis and only caDable of that movement will generally only need one off - axis transmitter to be mounted thereon to allow its rotational position to be computed.
If two spaced apart transmitters are mounted on an object, 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 object to transmit in succession.
If the object 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 possiblei and the-most.accurate description of each orientation as well'as the movement of'the object will be-obtained.
A pref erred:. embodiment of the invention -comprises a system for 13 determining the position of an object in a specif -Jed 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 f ixed points in or around the specified environment, and in which the distance of the transmitter from each receiver is computed from the times taken f or the measurement energy 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 transmiss ions, 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 object 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 different 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/ t rarismi t ter combinations, and the control system is programmed to encode the transmissions using the address information so as only to address the transmitters individually.
14 Preferably in addition to the unique address f or each receiver/transmitter combination, at least one additional item of information (a weighted hierarchy indication for schedule positioning, or "WHISP11) 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 f or each unique address, and it is the WHISP which must be changed to adjust the subsequent addressing of the transDonders.
Al ternatively a set of standard WHISPS may be stored and an association between each unique address and one of the standard WHISPS is stored f or each unique address, so that an appropriate WHISP is linked to each unique address. In that event only the associations need to be changed so as to influence the subsequent addressing of the transponders. Likewise a change to one (standard) WHISP will mean that all the assoc-Lated addresses will be given a new hierarchial position.
For complete flexibility unicnae addresses, WF7SPS, (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 ervironment will be addressed by the coordinating control system.
In one exanmle the WHISP mav be a simole loaJ c i or 0 to indicate whether the transponder combination is to be addressed or not.
The WHTSP may comprise a priori ty or weighting measure to determine t'he order or rate at which the traz,snonder is to be addressed.
The WHISP may comprise two items of information, firstly ' for example t.';.,Ie 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 f igure to be achieved by the system for that transponder.
Assemblv-o'- address-lists -(scheduling) The coordinating control system may compile a list of transponders to be addressed in a sequence by. interrogating all of the unicue addresses and th-eir related WHISPS and compiling the order in which they are to be inter-rogated using. the current W:E---SP information....
Thus in one arrangement. the Coordinating control- _system may create a sched.ule of..unique transponder addresses, using the 16 WHISP data, and arrange the order of the addresses in the schedule, and therefore the order in whicii 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 transnonders 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 WHISP data may be held over pendina the end. of the interrogation of the current schedule of addresses, whereupon the WHISP data is updated prior to the compilation of the next schedule.
Interruptions to scheduling In an alternative mode, a change to a WFT lay be permitted to interrupt the running of a particular schedule if the unique address or aaaresses associated with that is/are still to be interrogated, but is held over to update the WHISP data before the next schedule is comoiled if the 7oarticular address or addresses has/have already been interrogated in the current schedule.
Tn either mode, the system may include an emergency override to allow the transponder triggering in accordance with the current schedule to be terminated immediatelv, and for a new schedule to be immediately compiled, takLnc account of the WHISP change associated with,, -or entered w-::-t'. -. or after, the emergency override instruction.
Dvriamic schedulina An alternative and more flexible approac-'a to sctieduling involves merelv determining from all available data existing just before z-he next trigger transmission iLs due, the next transponder address whi:ch s1hould be interrogated, using a suitable algorithm and h-igh- speed processing, and the 17 development and implementation of one particular alcrorithm for performing this function is set out below.
Determination of dynamic WFMzn- schedulina Changes to WHISP data may occur as a result of a lanse oJE 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 svstem, or the coordinating control system, or another computer - altogether), or by the entry of data bv an operator for examnle to indicate that the system should cease its scheduled transponder pos-itJon. determining function and for example seek one particular transponder (which to that on a particular person or object may for example relate believed to be within the en7,r-;.--o=ent) Additionally or instead, env_-:_ronment related information may be allowed to create an inter--uDtion to per-mit or cause WHTSP 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 seDazately monitored environment, or by transducer originating signals linked for example to the movement o' an object either within the environment; within an adjoi-ming environment; or for example by the opening of a door communicating between one environment and another.
Independent movement sensing The movement of.an object wiz'----in the monitored environment or an adjoining.environ:ment may detected by means of a movement sensor such as a trembler sw--=ch, associated with. the object. if so a radio or hard- wir--A- communication channel-Pay be required between the sensor and the coordinating control system.
18 WHISP data chanaes References to changes to WHISP data, include changing the WHISP data stored in a unique memory means lirLked 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 o.-E standard WHISPS are stored and associations between them and the differenttransmitter addresses are stored.' ODeration of the scheduler According to another aspect oJa_ the invention, the scheduler may be adapted not only to determine the -order in which the transz)onde-s are to be int-er-rogated but also the' rate of 7 interrogatilon of any one transponder.
This may for example be a fixed rate associated with the particular transponder address, which rate is entered as a second item of information in each WHISP.
A-Iternately in another example, the second item of information may be an adjustable rate value, which can be altered in relation to variations in anarameter monitored by a transducer or sensor. The parameter may for example be temperature, light level, sound level or the like, or may be a value'which can be adjusted by an operator, or in relation -for example to a parameter such as the time, or the date.
According to a particularly preferred aspect the iniientlon the rate Darameter - associated with each W::TSP'-tS" f may be a el dy-namic variable; -whose ins=Lntaneous value is deterr_;ned for examole by whether ''a'varia't" ion has occurred. in the--aetected zosition of a transponder carried by an object.
19 Resource allocation If the object(s) are stationary, the position(s) of the trans-oonder(s) carried by the object(s) w.4;-1-1 be substantially identical each time the system interrogates the relevant transnonder (s). By comparing the last noted position (s) with the current noted position(s) and applying a tolerance band to cover minor 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 f or more frecruent interrogation of transponders positioned on objects which are movina, and whose -oositions 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- Trackina rate var4ation 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 t' he tracking,,. Ue frequency of interrogation) of. a transponder of.a. first. object. if alsecond object having such a.third item of..inf ormation. stored as part -of its WHISP is perceived by the position determination of the tran. soonder on. the second object, _to have moved close.to the t ob4ect..
firs J Thus for examDle.the WHISP of a transponder address of a human being may. ca---ry such a third item.of information, so.that if the transponder linked to the person concerned is seen by the system to approach an object which is normally stationary and whose transDonder would otherwise be interrogated perhaps only once every 5 minutes, the interrogation rate of the transponder associated with the stationary object 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 transDonder address which is to be interrouated, afully e ted since it allows the scheduler'to dynamic system can b cre8L%alter not only which transponder is to be interrogated but also the rate at which different transponders are to be addressed with cormlete flexibility, thereby to follow changes and developments in an environment, with little or no delay. The system can therefore be thought o--"' as having very low 4 hysteresi's and by including pre-programmed items of information in each WHIISP, 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 assu=t-ions to allow aloorithm. oarameters to be determined By way of example let us consider a location system that uses a set of ultrasound receivers placed at km-own positi ons on a ceiling in a room to- detect ultrasonic signals from an ultrasound transmitter attached to an object inthe room. By determining the times-of-flight of those signals from the ultrasonic transmitter to the ultrasound rece:. Lvers we may calculate in the three dimensions the position of "tiiat - object in the room. The a system. can be extended %to locate'more than one ultrasonic' transmitter in the room, p-rovided -each has a unicrue address so that they can be triacered-seDarately, typically by serially polling the transmit-ters.
imes, a in order to accurately measi-,re the signal- flight-t central cooZ'dinating- device!=Jggers the transmitter" at the 21 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 transi)onders 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 sianal into the room. Each receiver includes a uniaue address. The radio signal contains one such unicrue address. Upon receipt of the radio signal, each radio receiver compares the transmitted address with its own, and, if the addresses match, its ultrasonic t-ransmitter 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, theref ore, 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. s clearly -a priority, and this distribution should%take:account of the different rates at qhich location information about particular objects is desired. For exa le, the system might normally monitor transponders MP carried -'by people (who'move often) - &t.-least --once - each second, whereas it might monitor those attached to desks, filing I :. 0 cabinets or workstations (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 timeslots can arise when members of a grout) 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 object, such that any motion of the object between readings can make the derived information inaccurate.
As mentioned above, the process of times-Lot distribution is called scheduling, and software, typically _J_-_ the form of an algorithm -For pe--fom-ming this function, will be called a Scheduler.
The priority level assigned to each different transponder is called its Location Quality of Service (LQoS).
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 inve.n.tion.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 %ILQoS); and J.'fur-thermore to.deal with service demands which are greater.or less.than the system capacity, by scaling excessi--ve requests fairly in:the former case, and paddiTig with dummy timeslot assiqnments in the second. It is also capable o-f adjusting..timeslot assignment to allow- a group of transponders to be located. consecutively.
23 Scheduler imnlementation Let us consider a system having the following parameters:
(1) The lenath of a timeslot is 40ms (-Je the system is capable of determ4n-ina- 25 positions per second) (2) The transmitters each have a unique 16-b-it address (3) The reserved address 0 is not allocated to any transmitter.
(4) Every transponder is also a member of- one transponder " so A. dentifier group, a.L -identified with a 16-bit number (again, i 0 is reserved).
(5) The scheduler is a COIRBA-based distr-;buted software programme (Object Management Group, The Common Ob-;ect'Recruest Broker; Architecture and Specification. Revision 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 desi=ed period of positioning (eg an LQoS of 25 requests one position every 25 timeslots, -Je once per second).
In accordance with the nvention,. the Scheduler is adapted to maintain a scheduling table stored in memory. Each row of the table contains six entriest 1. A 16-bit transponder address, a 2. A 16-bit group identif tta-unsponder, S 3. The LQoS for the transpondear,-1 4. A real number called the =.-ff ective LQoS (or ELQoS), e S. A real number called the score, s 6. A bit called the slotswab- bit,'h.
24 A row in the table is described by an ordered six-type (a, g, 1, e, s, b) - A global flag called "excess -demand" (to be described later) and an integer called "last-group" are also' maintained by the Scheduler.
When the Scheduler process is initialised, t.--e scheduling table is empty. A single row (0, 0,!, 1, 0, f alse) 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 reguest.
An operator (user) or software application ca-n contact the scheduler over its CORIBA interface to indicate that the location reaulests for a transponder group should be added or changed. It should be noted that if two or more transponders are members o-f 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 agolication passes the following i n f o rma tJ_ 0 n to the scheduler:
g, the transponder group identif ier 1, the desired LQoS- f or members of this transponder group a, the transponder address of members of this transmitter group For each transponder address a a,, the scheduler.then adds or modifies an entry in the scheduling table.
For values of -i between 2. and n, if _a. row of the form (aj,gjIlze-Is4, b.) is present -Ln the table, it is, updated to (a,, g, 1, e., s,, bj otherwise a row (a., g, 1, 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 "Eor each of the n entries in the scheduling table, e., with a new value e'i. _-.-E t s less than then e,'; is given by Equation (2) otherwise, if t is greater than or equal to I, el. is given by Equation (3). Deletina a recruest when a user or application contacts the Scheduler over its CORIBA interface to indicate that a location reauest for a transponder should be deleted, it also passes the address of that transT)onder a., to the Scheduler. (The entry corresponding to transponder address 0 may zioz he removed). I'LL the scheduler -finds that an entry for that- transponder is present in the table, it removes the corresponding row (a,,grierlsilb- ) from the table. The schedule-r- then updates every other row in the table (a-, g., ix, e.. s, bc) to (a., g. I ix I ext s 11,b,) where the value of SI, is given by Equation (4), in Equation (4) n is equal to the number of =ows 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. Allocatina timeslots, Once everv 40ms, the Scheduler. must tell the central coordinating device (across a CORBA interface) the address. of the transDonder which shoulal"'be lo6ated next. does this by examining the contents of the'schedul:ing table and any attempts,.o update the table are- bl ocked 'tintil this examination is comolete 26 First, the Scheduler steps through each row in the scheduling table. Iff the last-group register does not contain 0, and the scheduler encounters a row which the transponder group!D is the same as the contents of the last-group register, and in which the swap-slot bit is -Ealse, 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 onerates in accordance with the following algorithm:
(5) i. Choose the row in the table with the highest score (a_, 1gc11cjecrscjbc) 2. If b- is false, f or each- row of the table which has the transmitter group ID gr set th-e swapslot bit to flalse. Then, update each row in the table (a,, gX I ix, e, s.. b.) to (a., gX I ix r ex r s? xfbc) where sIx - :;.s given by S. (s. - I/e.) Next, the single chosen row in the table is further updated to (ac, 9c, ic e.. S (I C, bo) where s ",: (=s I. c The lastgroup register is set to g., Finally, the coordinating device is informed of the address a. of the transDonder that should be located, next.(if a, is zero, this indicates that no transnonder should be addressed in the next timeslot) 3. if b- is true, update. each. row in. the table (ax, gx,. 1., e., s., b. ) to (e-,c, g, e., s I, b.),.Vnere S can be computed as above. Next, the si,4gle chose-n..--Ow in,the table is further updated to (a., g., i., e,, s f alse) where s (s'. C 1 The row in the scheduling table with the highest score is 27 chosen again, and the above steps are retaken.
Rotational movement, The relative Dositions of two or more transoonders carried by the same object can be checked against their previous known positions to determine whether or not the object 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 object can be identified as such with a further item of information -in their associated WHISPS, such that the control system w-ill schedule the interrogation of the second and any subsequent transponder addresses of the set of transponders on the object af ter the Iffirst of the pair has been interroap-t-ed.
By interrogating the set of transponders on an object in rapid succession so any relative movement between position determination of each point is minimised, rendering the orientation picture of the object from each such succession of position de terminat ions to be as accurate as possible.
In genera! three transducers are needed to permit the orientation (and any changes in orientation) of. an object to be determined. For some objects normally constrained to occupy alimited range of positions only two. or even one transducer may be su'Ll-Eicient.
The invention also lies in apparatus for perf ormin any of the in particular..c above methods, and omDrises a master. radio transmitter for transmitting short duration radio f recruency trigger signals into an environment; a plurality of radio receiver- controlled ultrasound;transmitter units.. (transponders) located on movable objectsthroughout the environment; a plurality of ultrasonic receivers located at fixed, spaced 28 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 a-oDarent line of sight distances of the trans-oonders from at least some of the receivers, and thereby from the geometry of the receivers the apparent position of the object in the envirdnment; memory means for storing position data for' each such identified transponder and therefore the object on which it is mounted; sched,,iling means for determining the encoding o'f the next radio trigger transmission, and therefore the address of the next trans-Donder whose -Dosition -is next to he interrogated; add.-Ltional memory means for storing at least one additional item of information in association with the Dosition 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'-Lo--be in'the env'ironment', to deterMine, rhich. of the transponde. rs is next t o -be interrogated, 'and, to encode the next radio trigger signal accordingly.- The different memory means may comprise dif ferent- parts -'of one memory'device (such as a large random access memory) or may be 29 formed from two or more.different 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-s-ourious acoustic signals Obviously any acoustic noise sources in the environment which can generate ultrasonic signals similar to those sent by the ult=asound 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 bandwidtharound that frecruency, and the bandwidth of the sound signal emitted by the transmitter lis also limited to a narrow bandwidth around that frequency, and wherein the system includes a further ultrasonic receiver adax)ted 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 frecuencies and if not, the detected signal is identified as being TRUE,. and if accompanied, by other sounds, the detected signal identified as being corrupted by noise.
Thus for example -noise sources. in the environment (f or example, a set. of jangling keys) tend to simultaneously generate signals at a large number of dif f erent. frequencies, so that sounds are detected at the transmitter f requency. and: at -other frequencies simultaneously. The detect ion of such a range.. or..sound, signals (even though it contains a component at the -.transmitter frequency) has to be identified as either a F.USE sound signal or is as a TRUE s ignal which has been - corrupted by:
_noise, and in either event the signal must be rejected.
The number of additional frequencies that are monitored is preferably greater than one, and the monitoring may be performed at one or more of a number, of different points in the environment.
Orientation dete=ination In some circumstances, a plurality of transponders may be attached to the same' object- Thus if three transponders are attached to a rigid object 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 object may be deduced (assuming that no movement of the object has occurred between the time at which the measurements were made) Comoonent redundancy reduc+_--ion 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 object, complete physical independence of the transmitters is not required and components of different transmitters can be interconnected using wires- and duplication of comoonents which are corrmon to the transDonders can be reduced or eliminate(.
Accordina 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 res-oond to I more than one address and hence -can be described' as - ar - Ntil tipl e -Address transponder but for each addres. s oni y one of t'he ultrasonic transducers would be triggered, corresT3onding'- in'", each case to one of the points on the object.
The invention thus -an', object' having mounted 'thereon a nluralitV of ultrasonic transducers located at a -O 31 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 on an address codecontained within a radio signal received thereby, so that the different transducers may be triggered by appronriately coded radio signals, to transmit ultrasound s"Lanals into the environment at specific times, and from the diff-ferent points on the object, to enable the unique positions of the said Doints 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 envLronment.
Ultrasonic transmitter desic-r- 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, indivi dually, have a relativelv narrow beam angle) are arranged to point in different directions so as- to generate a generally omnidirectional transmission -Dattern. 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 he placed on an ultrasonically opacrue object in such a way that if an omnidirectional signai were 8 'be generated by the device. a.known f ract ion of the omnidirectional signal would be abs6rbed A directional beam extending--ovet the area not absorbed'by the -opaque object can "therefore" "be 'fewer generated usihg 32 transducers than would have been required to generate the OMnidirec?__Jonal signal, but the ultrasound signal issuing from the object will appear to be the same, as if an omnid-JI-ectional 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 suf f icient to enable the direction in which the screen is facing to be determined, by mapDina which of the receivers --.n the environment "hear" the transmitted ultrasound.
Power savina St-andard operation of each transponder leaves the radio channel open cont-J-1-luously. This technique ensures that it will receive all addressing messages from the coordinating device, but if the transvonder 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 lowpower supervisory circuit wb--;:_ch. can..turn the radio interface on and off.
Further power saving may be achieved if the freauency with which a pa-ticular receiver-t ransmitter wi-1-1 be addressed by the, coordinating device is. known.,. If the coordinating device is prograTrimed so as to be awar.e..-that the transponder will not, be addressed for some amount of time, it can encode that time 33 in the radio message, and after decoding the message the transDonder will be able to switch off its radio interface for that amount. of time. The power saving is particularly' efficienz: i.-L a transmitter is made to 'Isleew, --Fo-- a long time, as would be the case if the transuonder is being used to track, an item o-f office equinment 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 wo.ken up at short notice. Thus in the case in which th e coordinating de-vice is sending out 50 addressing messaaes each second, the transponders can be configured so that they turn on their radio inte-faces once a second, at a time when a message is due, and decode that messaae (therefore using 1/50 of the 'Dower 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 transmisslon, the n 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 offf 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 -orinter described abo-ve, if a nerson walked un to the printe,-,;, it is likely that they might-move the printer, and in.which event it mnav need to start' tracking -it immediately, even if itwas currently 11sleeiping" to save power.
T f a tra?.--s-oonder is taken out of.-range of the master radio attached to the coordinating device, there is no point in it 34 continually turning on its radio interface,:cor it will be unable to receive addressing messages. Therelffore, in order to save power in these circumstances, if a transponder does not.
re ceive an addressing message at a time when one is expected, then it can, be programmed to go into sleep mode f or a predetermined period (perhaps one m,inute), 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 s.econd to determine if it is in range of that coordinatingdevice if it did this once a minute, then the radio inter-face would use only 1/300 of the -oower 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.
Rea-i.stration o_"F new transponders as thev enter an environment it is desirable '"or such a system to be able to cope with the introduction of a previously "unknown" transponder unit without operator intervention - in this situation, there is. a requirement to indicate to the overall coordinatIng device that it Tnust 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 anreferred feature of- the present invention, a bidirectional- radio link is p. rovided between a remote receiver And eac-,- 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 bidirectional transponders.
In one arrangement the coordinating device may for example transmit the radio receiver addresses in sequence of all possible bi-directional transponders, at reaular 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 oZE bidirectional transponder addresses which are to be scheduled, for position determination by subsequently triggering by radio their bidirectional transponder so as to generate ultrasound signals.
In a more Dreferred arrangement a "Slotted ALOHk contentionresolution 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 transDonde.- to identify its unique ident-ifiCat-ion (ID) to the coordinatina device and establish its posit,:_on 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 M's into the schedile to be used by the master transmitter.
Preferablv 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 transDonder transmitter.
This indication may be sent- as part.of the addressing message.
The indication ma - simply be -a command to transmit or a Y..
separate acknowledgement f -Jeld.
In either case, the transponder's..unique radio receiver..ID may be encoded in the message to show that the master transmitter 36 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 unnecessarily.
Thus if a bi-directional transponder is moved to a location where its ultrasonic signal is undetectable (e.g. if 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 bidirectional 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 object -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 mo-vement: of the -object), and the resource should not be recla-imed. In the example given the transponder may have been te-morarily shadowed by -ultrasound absorbing material.
-If -no - signal is detected, -then the next time that bi directional transponder is addressed by the master radio 37 transmitter the coordinating device may be programmed to set a special dz- op bit in the addressing messagef to indicate that the location resources that are currently allocated to that transponder will be reclaimed, and the transT)onder concerned will- not subsequently be addressed via the master transmitter radio link.
if the transponder radio receiver can receive th-is message, iLmust 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 -h that rec aims the now unused location resource associated wiLID, until such time as the transducer achieves registration.
The use of a drop bit dictates that the radio inzerface should be verv reliable, since if a trans-oonder were to miss a messace telling it not to exDect 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 f-eature of the invention, each addressing message contains one or more sets of errorcorrecting or error-det ecting 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 transzonder receives such a message, it will immediately begin the registration process.
whether there are merely a number of independent but i nterlinked regional coordinators, or an overall coordinating 38 device which sits above a plurality of regional coordinating devices, either the overall device or all of the regional coordinatina devices (or both) may be programmed to remember the ID's Of' any bi-directional transiDonders 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 he sounded, and exit down remotely locked.
Likewise, ifff an ID is discovered in a region in which it should not be (eq a person or a container of dangerous material) then the overall coordinator (or the regional coordinators) may likewise be programmed to ra--;se an alarm, bar access or exit, and/or display this in a display.
Transmission of additional information According to another feature of the invention, in-put and output f acilities 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 devic'e may contain a number of data bits (an nOutput Data Value") which may, for examT)le, be sent to an output port on the addressed transponder, to control for example a display, or robotic device associated with that transponder.
Vie 'invention will now be described by way of example,, with reference to the accompanying drawings, 34.'n which:
Figure 1 is a schematic diagram of a positioning system; I Figure 2 shows the FPGA conf igruration of the transmitter unit, Figure 3 is a schematic diaaram of a mobile transmitter unit 39 f or the system of Figure 1; Figure 4 shows the FPGA configuration of the mobile transm-4tter 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 ?A 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 object 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 tot) (or bottom) and side''Vie'w of an omnidirectional ultrasound source; q.
Figure 13 illustrates'a:'more directional ult-r-asound 'source; Figures 14A and 14B are to-D and side views of at-riansDonder unit designed to be wom-n 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 object which is of acoustically opacrue 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 incorooratedin each room of the system of Figure 18; and Figure._23 is a detailed block. schematic of'a mobile transponder unit such as is mounted on obj ects in the --ooms in the system of Figure 18.
41 Overview of the drawinas In the drawing a set of ultrasonic receiving elements areplaced in a matrix on the -ceiling of rooms in which the system is installed, and ultrasonic transmitters are placed on the objects 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 sneed of pro-Dagat.-Lon is very fast, and unknown delays in the radio link will be very small comT)ared to the timeof-flight of, for example, ultrasonic Dulses used to measure distances so that to a first aiD-oroximation the measurements can be said to be synchronised, and the um-known errors will not signi-ficar-tly 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 val-id signals for the system.1-o be able to calculate the position of the transmitter, but if a!--- the receiving elements are coplanamr, 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 car. be -resolved if. it is known for example that all transmitters. are always below the ceiling.
The information-gathered by this system can be used to automate computing and -cormnunicat ions equipment in..azi:-,. Intelligent marmer. By locating the position of people and equipment for example -Ln. an office, hotel, hospital facility or home.
42 A_ environment, it is possible 'or example to route phone calls, dispatch a printing job 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.
Availabil 4;..ty of f ine -grain high resolution location -inf ormation. can allow new methods of human-comiDuter 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 threedimensional cesture generation.
It may also be possible to use the information crathered by the system to de_ect motion (by observing changes in the position of an objecz over time, or by Doppler ziethods) and the presence of opaque objects (which may shadow receiver elements), Vaich can be deduced from patterns of reception of the distance -measuring pulses.
Detailed descriT)tion of the drawincrs In Figure 1, the position system operation is as follows:
1. To find 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, bas6d around a Xilinx, XC3020A FPGA (the 'FPGA configuration is shown- in Figure 2) and interfaced 't-0 the PC parallel port, reads t1his address 'Live times a second, and generates a 40KRz. data stream comprising a preamble and the address from the parallel bus of the PC.
3. The 40ICiz data stream is'FM encoded onto a 41smH.z radio 43 link by a Radiometrix BIM418 radio module 16.
4. As the first bit of the preamble -Js generated by the transmitter controller, a signal from that controller commands an ADC 18 (HP E!413/A) to begin sampling at a rate of loolcqz (shared between all channels being sampled).
5. Mobile devices such as io described JLn 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 cruestion transmits a 750 microsecond pulse of 40KHz ultrasound. Typically an array of five tr ansducers 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 2G. 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 sa=le at 100KITIz for 20 milliseconds and the samples values are stored. The stored sample values are passed over a serial interface to the PC 12. HP Vee sof tware is loaded into the PC to manage the sampled data, f ind signal peaks, determine - transmitter- receiver distances, and calculate and position relative to the receivers of the mobile 'device that was addressed, using the algorithms de scribed 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 -trans. mi. tteris as follows:
44 1. At power-up, the Xilirux- XC3020A FPGA unit 28 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 BIM418 radilo module 34 and a 4MHz X-Ll-inx clock 36 (built around a 4MHz crystal and a 74HCTOO 1C).
2. The XC3020A unit 28 monitors incoming 40KHz received data until it detects a preamble and 8-hit address. It then co=ares the received address with its own (stored in its serial PROM), and if the add-resses 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 36).
3. The P-;.Cl6CS4 microorocessor 3.2 then disables the BIM418 radio module 34 and 4MHz clock 36, and places the XC3020A unit 28 into Dowerdown mode, to save power, for 0.196 seconds. It then re-enables. these com-Donents and step (2) is followed again.
Power is typically derived from two 3.6V half-AA lithium thionyl chloride batteries, regulated to SV 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 bv 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 TLO74 quad op-amp.
3. The am-plified signal is rectified using a full wave active rectifier 44. Typically this is built around one-half of a TL074 cruad 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.
S. This sianal is passed to the HP E1413/A ADC 18 (see Figure 1) via an Rj4S jack 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 o-f these are located at known locations around the environment (room) in the ultrasonic posItioning system.
As shown Ln Figure 6 (A), each receiver 47 _Js triggered by a central controller 48 across a network 50. Following a timing or reset signal 49, the receiver monitors s-Lanals from a 40KHz ultrasonic detector 52 for 2 Oms 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) Reducina-svstem res-oonse to st)urious acoustic sianals To conf er. noise i=nunity a two channels.and two ulrrasonic detector are Drovided as shown in Figure 7. -The f irst-. detector _--st channel 58 are sensitive the 52, and fJ to 4o kHz and second, 60,.62 to another frecruency eg.25kHz.
46 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 th.e first time asshown in Figure 7 (D).
The value b is checked and i.-E 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 Ficrure 7 (D), and noted by -64, the time value a -from the f irst 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.
Transnonder des i cTn A standard receiver- transmitter (transponder) unit 68 (such as item 1.0 in Figure 1) is shown in Figure S.
This comprises a radio receiver (1) which Dicks 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 deco ding logic -72, which nresents the address contained in any decoded message, to an address - comDarator 74. If th-e latter identifies the address in the message as that of the transponder stored in ROM 76, it triggers a -signal generator 78, which 4_-Lves a set of ultrasonic transducers 80 to transmit an ultrasonic pulse.
Two such standard'transnonders 82, 84 are -show'n in -Figure 9 attached to two spaced apart points on a chair 86.
47 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 88 drives two individually addressable ultrasonic transducer sets, mounted a-L. 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 Dicks uD the encoded FM signals in the 418MF-z band from' the central transmitter. These signals are passed th-rough decoding logic 96, which presents the address contained in any message detected to an address comDarator 98. The latter is associate d with a look-uD 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 he the ordered Dair (1,1)).
If the address com-oarator identifies that the address in a received radio message matches one of the transducer addresses in the look-um 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.
M' 1-14 'are connected Two grou-ps of ultrasonic transducers separately one to port 1 (controlled by:gate -08) and the other to port.-2 controlled by gate 110.- Introducing directionality into the -transduce--;-s Since ultrasonic transducers tend to produce-a-sound wave over 48 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 Dluralitly 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 12B 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 reau-i--ed than in an omni direct ional source such as shown in Figures 12A, 12B.
Figure 14A shows a transponder!26 capable of being worn by a r)erson around their neck for examule 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 project in front of the person 2.34. 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 objects on which transponders omnidirectional (standard). are. attached. are oDaaue or relatively. opaque to ultrasound, it is possible r-o obtain information -about the orientation of those objects from the, data. collected by the receivers such as 20, 22 etc in Figure 1. Consider a transDonder 136 attached to a known point...:138..on such,-,.an object 140, as in Figure 15. The opacity of the object 140 ensures that the only -sound energy 142, which -can.- leave I its -vicinity does so in the direction 144. This effect may be amplified if 49 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 per-forming a calculation on the information they provide, the location svstem can calculate in three dimensions the posItion (x,y,z) of the trar-sDonder 136. The location system also knows the p ositions (u.,V,,W,)... (u,,,vw,) 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 i)oint 138 relative to the object 140 is known.
An example o-F 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 there-fore he 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 Diane over which sound energy,will be radiated from the ultrasonic. transducers on the transponder 152.
First it is necessary to conpute the mean point of detection of the ultrasonic signal on the ceiling (Cl, v, w) given by Eauations (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) O so 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 object'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,o) The value of A in the range [-7r,7r] can be comouted from the values of sinA and cosA given by Equations (1I) and (12) The value of A can be used as an estimate of the direction in which the person is facing.
Figures 18 to 23 illustrate a position detection system embodying the invention and the separate parts making up the system.
Conmiete 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 166. 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 168 con:nected to the Matrix kahager 166 51 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 linkedto a central area manager 186.
Information from the Scheduling PC and the Positioning PCs is collated by an Area Manage-r 186, which produces a stream of location events that may be sent to users or applications. In :orm this collation, elements o-E the system must order to pert be synchronised - this is achieved using a 2SHz signal from a Clock Generator 188 and initialising PC 190.
Radio signals are transmitted to the mobile transponder radio receivers from a master raLdio transmitter/receiver unit 189 operating at 418 MHz with FM encoding.
Individual uart of tle system (1) Clock-Generator (Figure 19) The Clock Generator 188 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 2.94. The time store holds the current global time value, and the counter iricrements it with every pulse.. An initial global time value may be loaded from a the PC 19.0 connected.to the Clock Generator (see Figure 18).
52 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, 1-82 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 -Drocess is complete, the Zone Manager unasserts the "Ready" status line. on receiDt 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 Manchesterencoded coDy of the stored TDacket at 40kbps to the transmit side of a 418MHz FM Radio Transceiver 208, thus sending a DCbalanced 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 err-orchecked, 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 line, indicating that the Scheduling PC can review the stored time and any... stored'mes'sage. To this end the "s'cheduling PC controls Data- Path Switch 214 to supply trigger tune (from 204) and/or message(from store 212) as ap'Dropriate, before loading the nex. t packetto'be transmitted.
53 The global clock synchronisation network signals pass unchanged through the Zone Manager.
* (3) Schedulina 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 Im-olementation".
once the next Mobile Transmitter's address has been determined, the Scheduling PC determines whether an application requires that an "Out-Dut Data Value" should be sent to that transmitter. It also dete--mines 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 been registered with the system whether this has been done by an operator, or an application according to dataltime or data -forcing the system to look for a particular mobile transponder address or has been -7 achieved automatically.
54 Two values, s (the score) and e (the Ef f ective Location Quality of Service) associated with the Mobile T-ransponder 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 -L-he 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 it s f ormat 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. Simill-arly if no -.4obile 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 --'-,-e Area Manager across a CORBA interf ace (Object Ma nagement 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 fitted 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 pulse along line 216 from the synchronisation network 200, the Matrix Manager stores the associated time in a Time Store 218, limits z1for 9.65ms to allow the radio message to be sent and sends a nReset" 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. -It can also retrieve the latest measurement of the. temperature in the room measured by a temperature sensor 22.2, the output of which. is continually digitised by ADC 224 and stored in memory 226 for retrieval for example when the Receivers are reset.
56 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 ultrasound 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 22 8 and transferred when instructed to a Data Path Selector switch 230 (Figure 20) together with the digital temperature value from 226.
The global clock synchronization 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 f irst 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 nolled by the Positioning PC also connected to that Matrix Manager The address may be coded - for example by setting switches 235- on the PCBs of the Receivers.
When a Receiver detects a "Reset" signal condition on the 57 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 tra---sducer which has been ampl-J.-Eied in 242, rectified 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 stoDDed- If the 20ms window closes before a peak is der-ected, the value o is f ormed 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 detect-S -that the Receiver is being polled, the stored value in the counter is sent back to the Positioning PC via the upstream netwcrk 232 and Matrix Manager, together with error-checking information. incoming information from other Receivers on the uostream network is blocked during this period.
Additional lines on the downstream network 2_3A_ 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 r._Jse=. above a certain threshold relative -to. the lowest signal v-=-ue.seen. so far.
i mor u of the Receiver this algorlirlm s e seful'vqhen the offse-..
amplifier is liable to.change.
The threshold source may be a bank of sw-:.-%-ches 252 on the Receiver PCR, 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 25,1, the Positioning PC 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 Temporar-y Threshold Memory 25G. The Positioning PC then sets the -ooll address on the downstream network to the address of the Receiver whose threshold must be alteredf 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 Transiponder (Figure 23) The Mobile Transponder shown in Figure 23 can he attached to objects, and generates ultrasonic signals 258 by which its position and possibly orientation can be determined.
Incoming radilo 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 inf ormat ion in the incoming mes sages 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 throigh the transmit side of the Radio Transceiver 260. The Message Generator is used by a Registration Contro er 268, Vaich 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 A_f 'fitted).
S9 If a good message is recei.. ved, the Message Decoder compares the transmitter address contained in the incoming message with that stored in ROM 274. If the addresses match, zhen:
1. A trigger signal is sent zo a Pulse S;gna! Generator 276, which drives a set of ultrasonic transducers 278 (arranged around a hemispherical shell) at 4okHz for 50As 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 _no- L set, but the Mobile Transmitter is attempting to regist-er with the Zone Manager, the Registration Con-c-roller 282 is -;'__-__-cormed that the registration attempts were successful, and need not attempt to register again.
4. If the transmit bit in the message is set, the Mobile Transponder prepares to immediately transmit -:;.-L-s address over its bidirectional radio interface (260) to 208.
5. The 8-bit Output Data Value in the message is sent to a 10way data port on the Mobile TransDonder (the Dort also includes a ground line,. and a strobe line -which irldica--es when the data is valid).
if the Message Doctor. indicates that the incoming message is not for the current- transmitzer, but that::---e Registrat-J.on acknowledgement field contains the address of the current transmitter, then the Registration Controller 2B2 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 attenmting 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" contentionresolution protocol (driven by a Dseudo-random number generator) indicates that the Mobile Transponder should attempt to send data to the Zone Manager in th 4 S timeslot.
If one of these events does occur, a message generator waits a 25As turnaround time before switching on the transmit side of the Radio Transceiver 260, and sending (at 40kbps) a 168-bit preamble followed by a Manchester- encoded version of the packet whose format is shown in Table (13) A Cyclic Redundancy Check code may be included in the packet to detect link errors or collisicins with transTri ssions f rom. other Mobile Transmitters. A standard CRC-B 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 lowpowered 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 -he 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 PowerSaving 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 418MEz 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) 2ositioning PC A 20OMHz Pentium-pro IBM compatible PC with a 48 line parallel digital 10 card may be used and the same hardware is suitable for all PCs-shown..
62 Associated with each Matrix Manager is a Positioning PC 154, 168, 184 which computes the compositions of Mobile Transmitters from the time-offlight 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 he processed. When the "Results Ready" status 1-4ne 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 Readyn 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 transmil tterreceiver dilstance. The Positioning PC interrogates the Matrix Manager such- as 166, 182 and determines the current temperature of the room, t (measured in OC) 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, f or 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 -f light, f i, f rom the Mobile Transponder to Receiveri, the corresponding transponderreceiver distance can then be calculated, - li -as li = cx (f 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,O) is 1', are that al! Receivers lie in the plane of the ceiling. It can be shown that 1'. is given by Equation 15 Equation 1 can be regarded as a nonlinear model.,-,.see Myrs, R. Classical and Modern Regression with Applications, PWS-KENT, 63 1990, and can use nonlinear regression to tit the values of J,x and y for several Receivers to this model. This gives estimates ia, v and 41. This allows the determinat-ion of a best least-sauares estimate for the Mobile Transponder's Position as the coordinate (ia, 4r, -NAv), taking the necrative square-root of Q' to fix the transponder below the ceiling. A shadow solution ((C, V^,-Vv) corresponds to an iMDOSsible 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 Dulse travelling along a direct line from the transponder. This pulse will arrive before any re-Elected 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 f irst received signal peak will be due to a reflected pul;e. 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 technicrues 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 do not satisfy this test, it can be stated that the larger'of the two distaiaces must be a measurement Liong a reflected path (remembering tha reflections can only increase the measured distance), and can discard that result from the data set.
64 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, 1B. Primer of Applied Regression and Analysis of Variance. McGraw-Hill, 1990) provide one met-hod of identifying outliers in data sets, and can be calculated JEor 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-c omputing the nonlinear regression and residuals.
The statistical test is reneated until the variance of the remaining measurements fall below an acceptable threshold (suggesting "that all outlying data Doints 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 e, 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. Fin ally, it sends an event of. the form (X, Yr Z Ar time) to the Area Manager across a CORBA interface, indicating the cal CUlated position (x, y, z), orientation (6) 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) 7 - should be noted that the Positioning PC (168, 184) can send ommands to individual Receivers (via the Matrix Manager) to change the Deak 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 186 which comprises inter alia a data processor (such as a PC) This gathers events of the form (ident4ifier, time) from the Zone Manager, and events of the f orm. (x, y, z, 6, time) f rom each Matrix Manager.
An associative. memory in the Area Manager links events using the time Darameter, and generates a stream of events of the f orm (ident if ier, x, y, z, e, t -:1-me) 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 ajplicat_Jons.
Power savina at the receiver- transmitter 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 aecoding the message the receiver section can be turned off for that period of time.
GG Control sicrnals 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).
67
Claims (1)
1. A system for determining the position of an object in a specified environment, in which the transit time is deten-nined 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 envirom-nent, 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 environnw,-nt 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 co-ordinating control system is provided for determining the order in which the object moditted 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.
2. A system as claimed in claim 1, wherein the co-ordinating 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.
68 3. A system as claimed in claim 2, 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.
4. A system as claimed in claim I or 2 or 3, where the co-ordinating control system is separate from or formed as an integral part of the master transmitter.
5. A system as claimed in either of claims 3 or 4, wherein a WHISP is stored for each unique address and it is the WHISP which is changed to adjust the subsequent addressing of the transponder transmitters.
6. A system as claimed in claim 3 or 4, wherein a set of standard VYrHISPs 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.
7. A system as claimed in any of claims 3 to 6, wherein each VMISP is a simple logic I or 0 to indicate whether the transponder transmitter is to be addressed or not.
8. A system as claimed in any of claims 3 to.6, wherein each WHISP comprises a priority or weighting measure to determine the order or rate at which the transponder transmitter is to be addressed.
9. A system as claimed in any of claims 3 to 8, 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.
69 10. A system as claimed in any of claims 3 to 9, 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.
11. A method of assembling a list of addresses in a system as claimed in any of claims 3 to 10, wherein the co-ordinating 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.
12. A method as claimed in claim 11 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.
13. A method of updating a list assembled in accordance with claim 11, wherein any changes which are required to be made to VMISP 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.
14. A method of updating a list assembled in accordance with claim 11, 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 VMISP data before the next schedule is compiled if the particular address has already been interrogated in the current schedule.
15. A method of updating a list as claimed in claim 13 or 14, 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.
16. A method of scheduling transponder addresses in a system as claimed in any of claims I to 10, 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.
17. A system as claimed in any of claims I to 10, wherein changes to WHISP data occurs as a result of a lapse of time, the am'val 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 co- ordinating 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.
18. A system as claimed in any of claims I to 10, or 17, 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 object either within the environment or otherwise, or by the opening of a door communicating between one environment and another.
19. A system as claimed in any of claims I to 10, 17 and 18, wherein the movement of an object within the monitored environment or in an adjoining environment is detected by means of a movement sensor such as a trembler switch, associated with the object, and a radio or hard wired communication channel is provided between the sensor and the coordinating control system to alert the control systern to the said movement.
20. A system as claimed in any of claims 13 to 19, 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.
71 21. A system wherein scheduling is performed in accordance with claim 16, 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.
22. A system as claimed in claim 21, wherein a fixed rate is associated with each transponder transmitter address, which is entered as a second item of information in each WHISP.
23. A system as claimed in claim 21, 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.
24. A system as claimed in claim 23, wherein the parameter is temperature, light level, sound level or an operator adjustable value, or the time or the date.
25. A system as claimed in claim 24, 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.
26. A method of reducing the data traffic in a system as claimed in any of claims 13 to 25, 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 fi7equency 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.
27. A method of adjusting the frequency of addressing (tracking) of transponder transmitters in a system as claimed in any of claims I to 10 or 17 to 25, 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 72 such a third item of information stored as part of its VMISP is perceived by the position determination of the second object, to have moved close to the first object.
28. A location system as claimed in any of claims I to 10, 17 to 25, 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.
29. A location system as claimed in claim 28, 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.
30. A location system as claimed in claim 28 or 29, wherein a group of transponder transmitters need to be interrogated in consecutive timeslots.
31. A location system as claimed in claim 30, wherein the positions of the transponder transmitters in the group are to be used to determine both the location and orientation of an object.
32. A method of tracking the movement of objects in an environment using a system as claimed in any of claims 1 to 10, 17 to 25 or 28 to 31, 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.
33. A method as claimed in claim 32, insofar as it is dependent on claim 3 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.
34. A method as claimed in claim 32, insofar as it is dependent on claim 3 or any claim dependent therefrom wherein a set of more than two transmitters are carried by an object and 73 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 detennination of each point, is minimised.
35. A method as claimed in claim 34, wherein a further item of infonnation 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.
36. Devices for use in a system as claimed in any of claims I to 35, 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.
37. Apparatus for performing a method of object position determination or tracking as claimed in any of claims I I to 16, 26 to 27, or 32 to 35, 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 objects throughout the environment, some or all of which objects 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 objects in the environment; a co-ordinating 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 object in the environment; memory means for storing position data for each identified transmitter object combination; scheduling means for detennining 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 74 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 deten-nine the next encoding of the radio trigger transmission.
38. A method as claimed in claim 37, 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.
39. A method of reducing the influence of spurious noise signals in position determining systems as claimed in any of claims 1 to 10, 17 to 25 and 28 to 31, 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.
40. A method as claimed in claim 39, 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.
41. A method as claimed in claim 39, wherein at least one separate receiver is provided within the environment for monitoring sound sign als at one or more frequencies different from that used by the transponder transmitter, and the logic circuit means is associated with the control system.
42. A method as claimed in claim 41, 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.
43. A system according to claim I or any claim appendant to claim 1, wherein at least one of the objects has mounted thereon a plurality of ultrasound transponder transmitters, 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 transducer means depending on an address code contained within a radio signal received thereby from the master transmitter, so that the different transponder transmitters 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 with reference to the monitored environment.
44. Apparatus for use in methods or systems as claimed in any of claims 1 to 43, 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.
45. A method of determining the orientation,of an object in a position determining system or hen using apparatus as claimed in any of claims 1 to 44, in which a directional transmitter is mounted thereon in a known position relative to the object so that energy is projected along a known axis relative to the object, 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 object, and mapping those positions relative to the environment.
76 46. Apparatus for use in the method of claim 45, where the directional transmitter comprises a directional ultrasound transmitting transducer adapted to be mounted on an object whose orientation is to be determined.
47. A method of reducing the power required to operate the transponder receivers in a system or apparatus as claimed in any of claims I to 46, comprising the steps of transmitting to each transponder receiver infonnation 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.
48. A method of reducing power requirements as claimed in claim 47, wherein further power saving is achieved if the frequency with which a particular transponder is to be addressed by the co-ordinating device is determined by the co-ordinating 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.
49. A method of reducing power requirements as claimed in claims 47 or 48, 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 co-ordinating 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.
50. A method of reducing power as claimed in claim 49, 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 I and may be less than 1).
77 51. A method as claimed in claim 49 or 50, wherein the wake bit forins 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 co-ordinating device and master transmitter until such time as it is instructed to revert to its sleep mode again.
52. A method as claimed in any of claims 47 to 5 1, 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.
53. Apparatus for performing the method of claims 47 to 52, where each transponder includes a low power supervisory circuit for turning the radio receiver on and off.
54. A system or apparatus or method as claimed in any of claims I to 53 wherein a bidirectional link is provided between the co-ordinating control system and each transponder receiver by adding a second transmitter to each transponder receiver and adding a compatible receiver to the co-ordinating control system, such transponders being referred to as bi-directional transponders, whereby the latter are enable to transmit data to the coordinating control system.
55. A method of operating a system as claimed in claim 54, wherein the coordinating device transmits the receiver addresses of all possible bidirectional 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.
56. A system as claimed in claim 54, wherein during registration a slotted ALOHA contention-resolution protocol is used to allow each bi- directional transponder concerned to 78 1'dent' ify its unique to the co-ordinating device and establish position in the schedule for the master transmitter/receiver unit.
57. A system as claimed in claim 56, wherein the contention-resolution protocol is performed until an indication is received from the master transmitter/receiver unit and/or its associated co-ordinating device, that location resources have been allocated to the new transponder address by the co-ordinator or the master transmitter/receiver unit.
58. A system as claimed in claim 56, wherein the said indication is sent as a part of the addressing message.
59. A system as claimed in claim 56, wherein the said indication is a command message to transmit, or the message is in the form of a separate acknowledgement field.
60. A system as claimed in claim 58 or 59, wherein the transponders unique receiver i'dentif 'on address is encoded in the message to show that the master transmitter and/or icati associated co-ordinating device is aware of the presence of the new address.
61. A method of resource retrieval as applied to a system as claimed in any of claims 54 to 60, wherein the co-ordinating device is programmed to re-allocate the location resources that are being employed to track a device if it falls to deliver an ultrasound transmission in response to a radio transmission trigger signal.
62. A method as claimed in claim 61, wherein the or co-ordinating 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 bidirectional 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.
79 63. A method as claimed in claim 62, wherein if a reply from the bidirectional transponder transmitter is detected by the master radio receiver in response to a transmit bit, the resource is not reclaimed.
64. A method as claimed in claim 63, 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.
65. A method as claimed in claim 64, wherein each bi-directional 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.
66. A system as claimed in any of claims 54 to 60, 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.
67. A system as claimed in claim 66, 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.
68. A system as claimed in any of claims 54 to 60 or 66 or 67, wherein the second transmitter is a radio transmitter and the compatible receiver is a radio receiver adapted to receive signals therefrom.
69. A system as claimed in any of the preceding claims, wherein each transponder further includes input and/or output facilities.
70. A system as claimed in claim 69, wherein additional data bits are included in a message from the co-ordinating 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. 71. A system as claimed in any of the preceding claims in which the co-
ordinating control system determines the order in which measurement energy transmissions are to occur and/or the rate at which such transmissions are to occur.
72. 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 object therein are compared with stored information, or subjected to an algorithm, to determine the shape of the object.
73. 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 object, are employed to control the display of a graphical representation thereof in a television or computer monitor display.
74. A system for detecting the position and/or orientation and/or movement and/or shape of objects constructed, arranged and/or adapted to operate substantially as herein described and with reference to the accompanying drawings.
75. Methods of operating object detection shape checking and object displaying systems, for determining movement, saving power, reducing data traffic and operating ancillary facilities and organising the addresses of labelled objects to be detected, substantially as herein described and/or with reference to and as illustrated in the accompanying drawings.
81 76. 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.
77. A system for determining the orientation of an object within an environment defined at least in part by means of a plurality of detectors sensitive to energy of a first type and located at a corresponding plurality of known positions therein, wherein transmitter means is mounted on the object which is adapted to transmit energy of the said first type away therefrom and towards the detectors and has a known position relative to the object, and wherein polling means is provided for interrogating the detectors to determine on which if any the transmitted energy has been incident and for computing the straight line distances from the object to the detectors and thereby determining its position in the said environment characterised in that by using the known relationship between the transmitter means and the object, the direction in which the object is facing in terms of the said environment, can also be determined.
78. Method of determining the orientation of an object having a transmitting device mounted at a known position thereon, when located in an environment containing a plurality of detectors sensitive to energy transmitted by the said transmitting device and located at known positions in the environment, wherein the object is opaque to the transmitted energy, so that a directional transmission is obtained and wherein the energy is transmitted at a defined point in time and the detectors are interrogated at a later point in time to identify those on which energy has been incident prior to the later point in time, to enable the computation from the transit times to the identified detectors of the straight line distances between the device and the detectors, further comprising the step of determining the orientation of the opaque object by reference to the pattern of the identified detectors and by reference to the position of the device relative to the object.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB9625208.5A GB9625208D0 (en) | 1996-12-04 | 1996-12-04 | Detection system for determining information about objects |
GB9725760A GB2320089B (en) | 1996-12-04 | 1997-12-04 | Detection system for determining positional and other information about objects |
Publications (3)
Publication Number | Publication Date |
---|---|
GB0028651D0 GB0028651D0 (en) | 2001-01-10 |
GB2354073A true GB2354073A (en) | 2001-03-14 |
GB2354073B GB2354073B (en) | 2001-06-27 |
Family
ID=26310548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB0028651A Expired - Fee Related GB2354073B (en) | 1996-12-04 | 1997-12-04 | Detection system for determining position and orientation of objects |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2354073B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11096141B2 (en) * | 2018-08-27 | 2021-08-17 | Zte Corporation | Location information determination based on timing measurements in wireless networks |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3629058A1 (en) * | 2018-09-27 | 2020-04-01 | ELMOS Semiconductor AG | Method for carrying out a diagnosis or a self-test in an ultrasound monitoring system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0591899A1 (en) * | 1992-10-08 | 1994-04-13 | Ushio U-Tech Inc. | Automatic control system for lighting projector |
-
1997
- 1997-12-04 GB GB0028651A patent/GB2354073B/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0591899A1 (en) * | 1992-10-08 | 1994-04-13 | Ushio U-Tech Inc. | Automatic control system for lighting projector |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11096141B2 (en) * | 2018-08-27 | 2021-08-17 | Zte Corporation | Location information determination based on timing measurements in wireless networks |
Also Published As
Publication number | Publication date |
---|---|
GB2354073B (en) | 2001-06-27 |
GB0028651D0 (en) | 2001-01-10 |
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 | |
US6710719B1 (en) | Detection system for determining orientation information about objects | |
Ward | Sensor driven computing | |
WO1999028763A1 (en) | Detection system for determining positional information about objects | |
Priyantha et al. | The cricket location-support system | |
US7023356B2 (en) | System and method for monitoring individuals and objects associated with wireless identification tags | |
US6470002B1 (en) | Detection system for determining positional information about objects | |
US5491670A (en) | System and method for sonic positioning | |
JP7016878B2 (en) | Ultrasonic position fixing system | |
US6567005B2 (en) | Method of and apparatus for actuating an operation | |
US10114105B2 (en) | Location system using ultrasound | |
WO1995014241A1 (en) | Tracking system | |
AU2004307131A1 (en) | Location system | |
US20050151654A1 (en) | Method and apparatus for actuating an operation | |
US11816524B2 (en) | Indoor tag location detection system | |
US9743252B2 (en) | System and method for locating devices in predetermined premises | |
GB2354073A (en) | Detection system for determining position and orientation of objects | |
GB2332055A (en) | Detection system for determining positional information about objects | |
JP3337586B2 (en) | Moving object position detection system | |
GB2332054A (en) | Detection system for determining location information about objects | |
JPH01206279A (en) | Position searching system | |
US20190064317A1 (en) | Location system using ultrasound | |
Computing | A New Location Technique for the Active Office | |
JPH0161686U (en) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
732E | Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977) | ||
PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 20151204 |