This disclosure relates generally to inventory management systems. More specifically, this disclosure relates to a method and apparatus for level measurements or other measurements using time of flight calculations and estimates of false echoes.
Processing facilities and other facilities routinely include tanks for storing liquid materials and other materials. For example, storage tanks are routinely used in tank farm facilities and other storage facilities to store oil or other materials. As another example, oil tankers and other transport vessels routinely include numerous tanks storing oil or other materials. Reliable measurements of the level (or other characteristic) of material in a tank are often needed or desired to support various functions, such as custody transfers and industrial process control operations.
A level of material in a tank is often measured using a time of flight technique, such as by reflecting a light, radar, or ultrasound measuring signal off the material in the tank and measuring the round-trip time from transmission of the measuring signal to reception of the reflection. Unfortunately, in these techniques, portions of the measuring signal can reflect from surfaces other than the material in the tank, such as from a wall, roof, or bottom of the tank or from internal obstacles like ladders, healing coils, or agitators within the tank. These reflections create false echoes, which complicate the identification and tracking of the reflection of the measurement signal from the surface of the material in the tank.
The existence of false echoes often leads to unstable or false level measurements. As a result, a level calculation algorithm typically needs to select the true echo reflection (reflected from the surface of the material in the tank) and reject the false echo reflections (reflected from other surfaces in the tank). Specialized level calculation algorithms have been created, but their reliability still needs to be improved. Existing algorithms are typically based on information available to the algorithm after installation of a level gauge instrument, where the information often comes primarily from the first measurements recorded by the instrument. This approach can therefore require significant time and effort in both initial setup and fine tuning of the algorithm. Also, many level measuring instruments are powered through analog two-wire current loops, which can significantly limit the computational power available for use by the level calculation algorithms.
This disclosure provides a method and apparatus for level measurements or other measurements using time of flight calculations and estimates of false echoes.
In a first embodiment, a method includes obtaining first information defining one or more characteristics of (i) a tank configured to store material and/or (ii) one or more obstacles within the tank. The method also includes estimating one or more false echoes using the first information. The one or more false echoes represent one or more potential reflections of a signal off (i) one or more surfaces of the tank and/or (ii) one or more surfaces of the one or more obstacles. The method further includes providing second information identifying the one or more false echoes to a calculation algorithm configured to measure a characteristic of the material in the tank.
In a second embodiment, an apparatus includes at least one processing device configured to obtain first information defining one or more characteristics of (i) a tank configured to store material and/or (ii) one or more obstacles within the tank. The at least one processing device is also configured to estimate one or more false echoes using the first information. The one or more false echoes represent one or more potential reflections of a signal off (i) one or more surfaces of the tank and/or (ii) one or more surfaces of the one or more obstacles. The at least one processing device is further configured to provide second information identifying the one or more false echoes to a calculation algorithm configured to measure a characteristic of the material in the tank.
In a third embodiment, a non-transitory computer readable medium contains instructions that when executed cause at least one processing device to obtain first information defining one or more characteristics of (i) a tank configured to store material and/or (ii) one or more obstacles within the tank. The computer readable medium also contains instructions that when executed cause the at least one processing device to estimate one or more false echoes using the first information. The one or more false echoes represent one or more potential reflections of a signal off (i) one or more surfaces of the tank and/or (ii) one or more surfaces of the one or more obstacles. The computer readable medium further contains instructions that when executed cause the at least one processing device to provide second information identifying the one or more false echoes to a calculation algorithm configured to measure a characteristic of the material in the tank.
In a fourth embodiment, a method includes receiving information identifying one or more false echoes. The one or more false echoes represent one or more potential reflections of a signal off (i) a tank configured to store material and/or (ii) one or more obstacles within the tank. The method also includes transmitting a measurement signal towards the material in the tank and receiving a return signal containing a true echo of the measurement signal off the material in the tank and one or more actual false echoes. The method further includes identifying a characteristic of material in the tank using the true echo of the measurement signal by rejecting the one or more actual false echoes using the information identifying the one or more false echoes.
Other technical features may be readily apparent to one skilled in the art from the following figures, descriptions, and claims.
For a more complete understanding of this disclosure and its features, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which:
In the following description, the concepts disclosed in this patent document may be described as being used with a sensor for measuring the level of material in a tank. However, these concepts can be extended for use with other types of sensors, such as any type of sensor that transmits signals toward a material and that processes return signals (where rejection of false echoes may be useful). As particular examples, other types of sensors that could benefit from the rejection of false echoes include distance sensors (such as those measuring distance of material in a tank from a reference position) and volume or mass sensors (such as those determining volume or mass of material in a tank based on the height or level of material in the tank).
A sensor 106 with at least one transceiver 108 is used in conjunction with a processing system 110 to measure the level or other characteristic(s) of material 104 in the tank 102. The transceiver 108 emits electromagnetic waves or other signals towards the material 104 and receives reflected signals from the material 104. The sensor 106 includes any suitable structure for generating signals for transmission and for receiving reflected signals. The transceiver 108 includes any suitable structure for transmitting and/or receiving signals, such as light, radar, or ultrasound signals. In some embodiments, the transceiver 108 could include at least one antenna or other structure for emitting and receiving wireless signals, such as a horn antenna. In other embodiments, the transceiver 108 could transmit and receive signals that propagate over at least one waveguide, such as a metal rod, coaxial cable, or metal wire probe that is inserted from top to bottom (or at least some portion) of the tank 102.
Data from the sensor 106 is provided to the processing system 110. The processing system 110 can use the data from the sensor 106 in any suitable manner. For example, the sensor 106 could provide data identifying the transmitted and reflected signals, and the processing system 110 can analyze the data to identify the distance of the material 104 in the tank 102 from the transceiver 108 or other reference location. From this, the processing system 110 could identify the level or other characteristic(s) of the material 104 in the tank 102. The processing system 110 could also use the determined characteristic(s) in any suitable manner. For instance, the processing system 110 could control automatic loading or unloading of the tank 102 by controlling a pump 112 or by providing the determined characteristic(s) to an external controller 114 that controls the pump 112. The processing system 110 could also notify personnel responsible for controlling the loading or unloading of the tank 102, such as by displaying the determined characteristic(s) on a local or remote display 116 or by transmitting the determined characteristic(s) to a wireless or other device 118. The processing system 110 could represent any suitable computing or processing system or device, such as a computing device, a process controller, or other system or device.
The sensor 106 or the processing system 110 can implement a calculation algorithm to identify the level or other characteristic(s) of material 104 in the tank 102. One operation typically performed by a calculation algorithm is the identification and tracking of a true echo reflection (the signal reflected from the surface of the material 104 in the tank 102) and the rejection of false echo reflections (signals reflected from other surfaces in the tank).
In accordance with this disclosure, the system 100 supports the use of a configuration interface and a simulation/prediction module. Among other things, the configuration interface allows a user to provide information about a target application for the sensor 106 before the sensor 106 is installed or during/after installation of the sensor 106. The information about the target application may include, among other information, the size/shape/composition of the tank 102, a mounting position of the sensor 106 on the tank 102, a mounting connection for the sensor 106 to the tank 102, and the position/size/composition of one or more obstacles in the tank 102. In some embodiments, the configuration interface may contain a graphical user interface designed to solicit at least some of this information from a user graphically. One example of a graphical user interface that could be used as the configuration interface to collect information is described in U.S. patent application Ser. No. 14/321,150 filed on Jul. 1, 2014 (which is hereby incorporated by reference in its entirety).
The simulation/prediction module uses the information about the target application to simulate or predict one or more characteristics (such as distances, amplitudes, or shapes) of false echoes in the tank 102. The characteristics of the false echoes could be expressed in any suitable manner, such as by using estimated positions or shapes in an envelope curve. A calculation algorithm executed by the sensor 106 or the processing system 110 can use the information about the predicted false echoes (provided by the simulation/prediction module) to reject false echoes of measurement signals during actual level measurements or other measurements.
In this way, additional and readily-available information (such as from an application and validation tool described in U.S. patent application Ser. No. 14/321,150 or from a user) can be used to predict and reject false echoes in time of flight calculations for tank measurements. This makes the measurements more reliable and supports calculation algorithms that require less time and effort from end users (such as less fine tuning and optimization). Moreover, this allows the processing power used by the sensor 106 or the processing system 110 to be reduced by moving some of the processing load to the configuration interface or by providing predictions of the false echo positions and sizes. It also supports faster and more reliable startup of a measurement instrument in a new application or installation.
Note that the simulation/prediction module could be part of the configuration interface, part of the calculation algorithm itself, or a separate module. If the simulation/prediction module is part of the configuration interface, the information about predicted false echoes could be provided to the sensor 106 or the processing system 110 in any suitable manner before, during, or after installation of the sensor 106 and the processing system 110. Making the simulation/prediction module part of the configuration interface could save a significant amount of power during execution of the calculation algorithm since the calculation algorithm need not simulate or predict the false echoes during each iteration of the calculation algorithm. However, other implementations according to this disclosure could include the false echo estimation (simulation/prediction) as part of the calculation algorithm.
Also note that the configuration interface (with or without the simulation/prediction module) and the simulation/prediction module (with or without the configuration interface) could each be executed, provided, or otherwise supported by any suitable device(s) in the system 100. For example, the configuration interface and the simulation/prediction module could be supported by the processing system 110 or by a separate processing system 120, which could be in communication with the processing system 110 or the sensor 106. When implemented on a separate processing system 120, the same tool(s) could be used to support configuration and false echo estimation for a number of sensors 106 or processing systems 110. In particular embodiments, the processing system 120 could support a web-based tool that allows users from any location with an Internet connection to provide information to the processing system 120, and the processing system 120 could then provide false echo information or other information to any suitable destination(s).
In addition, note that the estimation and prediction of false echoes needs to be done only one time, such as during startup for each application or installation. It need not be done continuously unless the tank or sensor information changes, such as when the tank shape or the position(s) of obstacle(s) changes. However, nothing prevents the estimation and prediction of false echoes from occurring at other times.
Although
The application information 204 is provided to a simulation/prediction module 206, which uses the application information 204 to predict or estimate the false echoes that could appear in return signals when the sensor 106 is placed into operation. For example, the simulation/prediction module 206 could use the application information 204 to calculate the distances between the sensor 106 (or a portion thereof) and various tank or obstacle surfaces. Based on the calculated distances and the defined shapes/compositions of the surfaces, the simulation/prediction module 206 can calculate predicted positions, shapes, or other characteristics of false echoes in an envelope curve. The envelope curve represents the signals that may be received by a sensor 106 during sensing operations, where different positions within the curve denote different times of flight of a measurement signal. By identifying where false echoes are to be expected in the envelope curve, the sensor 106 or the processing system 110 could more easily identify the actual measurement signal's reflection (the true echo) from the surface of the material 104 in the tank 102 and more easily reject false echoes.
The simulation/prediction module 206 outputs false echo information 208, which is provided to a calculation algorithm 210. The false echo information 208 identifies one or more characteristics of the false echoes estimated by the simulation/prediction module 206. During operation of the sensor 106, the sensor 106 transmits measurement signals and receives reflected measurement signals as return signals. The return signals include various peaks associated with reflections of the measurement signals from the material 104 and from various tank and obstacle surfaces. The calculation algorithm 210 analyzes the return signals, identifies and tracks true echoes from the surface of the material 104, and uses the true echoes along with time of flight calculations to identify the level or other characteristic(s) of material 104 in the tank 102. The calculation algorithm 210 also rejects false echoes during the calculations, and this is supported using the estimated false echoes identified by the false echo information 208.
In
Each component 202, 206, 210 in the workflow 200 could be implemented using any suitable hardware or combination of hardware and software/firmware instructions. For example, each component 202, 206, 210 could be implemented using software instructions executed by at least one processing device of a processing system (such as system 110 or 120). As a particular example, the simulation/prediction module 206 could be implemented as a logic module with calculation capabilities. In some embodiments, the simulation/prediction module 206 can be implemented using the MULTIPHYSICS software product suite from COMSOL INC. or equivalent.
Although
As shown in
The propagation of signals within the tank is simulated at step 504, and one or more characteristics of one or more false echoes within the tank are estimated at step 506. This could include, for example, the simulation/prediction module 206 simulating the propagation of light, radar, ultrasound, or other measurement signals within the tank 102. The simulation could be performed in order to identify the position, amplitude, shape, or other characteristic(s) of false echoes within an envelope curve (also called the “echo curve”). As a particular example, the simulation/prediction module 206 could perform the following operations to estimate the behavior of measurement signals in the tank 102. In some embodiments, these calculations can be performed using wave propagation formulas that are adjusted or calibrated based on laboratory experiments conducted for each type of level or other sensor.
A=A
0
×K (1)
where A is the predicted amplitude, A0 is the initial amplitude of a signal sent by the transceiver 108, K is given as:
DC is the dielectric constant of the reflective surface, and F is a practically-determined factor (such as a laboratory-calculated factor) corresponding to one or more of the material, shape, and size of the reflective surface. Equation (1) above is an example that would be valid for electromagnetic wave propagation in case of guided wave radar measurement systems. These equations would be different for other embodiments, such as ultrasonic or laser systems.
The one or more identified characteristics of the one or more false echoes are provided or otherwise made available to a calculation algorithm at step 508. This could include, for example, the simulation/prediction module 206 outputting to the calculation algorithm 210 a set of data representing the following parameters for each obstacle or tank surface:
and
The information about the false echoes can be used by the calculation algorithm during tank measurements. For example, measurement signals are transmitted toward a material in a tank at step 510, and reflected measurement signals are received at step 512. This could include, for example, generating and transmitting light, radar, ultrasound, or other measurement signals using the transceiver 108 and receiving both true and false echo reflections at the transceiver 108. The true and false echoes in the reflected measurement signals are identified at step 514. This could include, for example, the calculation algorithm 210 using the information 208 about the false echoes from the simulation/prediction module 206 to identify and reject false echoes in the return measurement signals. This makes it much easier for the calculation algorithm 210 to identify and track the true reflection of the measurement signals from the material 104 in the tank 102. The calculation algorithm 210 could be performed by the sensor 106, the processing system 110, or some other device.
The level or other characteristic(s) of material in the tank is identified at step 516. This could include, for example, the calculation algorithm 210 performing time of flight calculations or other calculations using the true echoes of the measurement signals from the surface of the material 104. The level or other characteristic(s) of material is output or used in some manner at step 518. This could include, for example, the sensor 106 or the processing system 110 displaying the measurement locally at the sensor 106 or remotely, such as on the display 116 or user device 118. This could also include the sensor 106 or the processing system 110 using the measurement to control the pump 112 or providing the measurement to the controller 114 for use in controlling the pump 112. The measurement could be used in any other or additional manner.
Although
As shown in
The memory 612 and a persistent storage 614 are examples of storage devices 606, which represent any structure(s) capable of storing and facilitating retrieval of information (such as data, program code, and/or other suitable information on a temporary or permanent basis). The memory 612 may represent a random access memory or any other suitable volatile or non-volatile storage device(s). The persistent storage 614 may contain one or more components or devices supporting longer-term storage of data, such as a ready only memory, hard drive, Flash memory, or optical disc.
The communications unit 608 supports communications with other systems or devices. For example, the communications unit 608 could include a network interface that facilitates communications over at least one Ethernet, HART, FOUNDATION FIELDBUS, or other network. The communications unit 608 could also include a wireless transceiver facilitating communications over at least one wireless network. The communications unit 608 may support communications through any suitable physical or wireless communication link(s).
The I/O unit 610 allows for input and output of data. For example, the I/O unit 610 may provide a connection for user input through a keyboard, mouse, keypad, touchscreen, or other suitable input device. The I/O unit 610 may also send output to a display, printer, or other suitable output device.
As described above, the processing system 600 could execute instructions used to perform any of the following functions or any combination of the following functions:
Although
The sensor 700 further includes a display 706, which can be used to present various information to a user. For example, the display 706 could present information identifying the operating mode or status of the sensor 700, as well as measurements captured by the sensor 700. In addition, the sensor 700 includes a keypad 708, which in this example includes three buttons. The three buttons here include increment (↑), decrement (↓), and select () buttons. However, any other suitable buttons supporting any other suitable functions could be used with the sensor 700.
In some embodiments, the display 706 and the keypad 708 can be used to present information to and collect information from a user. For example, the display 706 could present a version of the user interface 202 to a user, where the user interface 202 includes options for defining one or more characteristics of the tank 102, the sensor 700, or one or more obstacles in the tank 102. The user could select each characteristic, cycle through various options, and choose the most appropriate option using the keypad 206. This information could then be used to generate the application information 204, which is provided to the simulation/prediction module 206.
Alternatively, the display 706 and the keypad 708 could be used to allow a user to navigate to a particular location for retrieving false echo information 208. For example, previously-calculated false echo information 208 could be stored in a networked memory location, and the user could use the display 706 and the keypad 708 to navigate to the networked memory location. Previously-calculated false echo information 208 could also be stored on a memory card or a portable device, and the user could use the display 706 and the keypad 708 to select an option for loading the false echo information 208 from one of those devices. Note, however, that false echo information 208 could be provided to a calculation algorithm 210 in any other suitable manner.
Although
As shown in
As shown in
As shown in
As shown in
As shown in
As shown in
The various information collected by the configuration interface 800 or 900 allows the simulation/prediction module 206 to estimate reflections from the tank 102 and obstacles within the tank 102. These estimated reflections are considered false echoes and can be used by a sensor during measurements.
Although
In some embodiments, various functions described in this patent document are implemented or supported by a computer program that is formed from computer readable program code and that is embodied in a computer readable medium. The phrase “computer readable program code” includes any type of computer code, including source code, object code, and executable code. The phrase “computer readable medium” includes any type of medium capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a compact disc (CD), a digital video disc (DVD), or any other type of memory. A “non-transitory” computer readable medium excludes wired, wireless, optical, or other communication links that transport transitory electrical or other signals. A non-transitory computer readable medium includes media where data can be permanently stored and media where data can be stored and later overwritten, such as a rewritable optical disc or an erasable memory device.
It may be advantageous to set forth definitions of certain words and phrases used throughout this patent document. The terms “application” and “program” refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or a portion thereof adapted for implementation in a suitable computer code (including source code, object code, or executable code). The terms “transmit,” “receive,” and “communicate,” as well as derivatives thereof, encompasses both direct and indirect communication. The terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation. The term “or” is inclusive, meaning and/or. The phrase “associated with,” as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, have a relationship to or with, or the like. The phrase “at least one of,” when used with a list of items, means that different combinations of one or more of the listed items may be used, and only one item in the list may be needed. For example, “at least one of: A, B, and C” includes any of the following combinations: A, B, C, A and B, A and C, B and C, and A and B and C.
While this disclosure has described certain embodiments and generally associated methods, alterations and permutations of these embodiments and methods will be apparent to those skilled in the art. Accordingly, the above description of example embodiments does not define or constrain this disclosure. Other changes, substitutions, and alterations are also possible without departing from the spirit and scope of this disclosure, as defined by the following claims.
This application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Patent Application No. 62/150,944 filed on Apr. 22, 2015. This provisional application is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
62150944 | Apr 2015 | US |