US 7711501 B2 Abstract Flowmeters are described in which a sensor signal received from a sensor that is attached to vibratable flowtube, so as to determine properties of a fluid within the flowtube, contains a drive signal component and a coriolis mode component. The flowmeters are operable to determine drive parameters of the drive signal component, as well as coriolis parameters of the coriolis mode component. By analyzing the sensor signal based on the drive signal parameters, and not on the coriolis signal parameters, the flowmeters are able to provide stable and accurate determinations of the properties of the fluid.
Claims(18) 1. A method comprising:
receiving, at one or more processing devices, a sensor signal from a sensor that is operable to sense a vibration of a flowtube having a fluid flowing therethrough, the sensor signal having a major signal component at a first frequency associated with a drive signal applied to the flowtube and a minor signal component at a second frequency associated with a contaminant of the sensor signal, the first and second frequencies being different;
determining, at the one or more processing devices, major signal parameters of the major signal component based on an analysis of the sensor signal during a time period defined with respect to the minor signal component; and
determining, at the one or more processing devices, a flow parameter of the fluid based on the major signal parameters.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
determining a minor amplitude of the minor signal component; and
modifying the drive signal based on the minor amplitude, so as to reduce an influence of the minor signal component on the sensor signal.
9. The method of
receiving a secondary sensor signal from a secondary sensor;
determining secondary major signal parameters of a secondary major signal component of the secondary sensor signal; and
wherein determining the flow parameter based on the major signal parameters comprises:
determining a first timing offset between a first true zero-crossing of the sensor signal and a first observed zero-crossing of the sensor signal based on the major signal parameters;
determining a second timing offset between a second true zero-crossing of the secondary sensor signal and a second observed zero-crossing of the secondary sensor signal based on the secondary major signal parameters;
determining the difference between the first timing offset and the second timing offset; and
determining the flow parameter based on the difference between the first timing offset and the second timing offset.
10. The method of
11. The method of
12. The method of
13. A flowmeter transmitter comprising:
at least one processing device; and
a storage device, the storage device storing instructions for causing the at least one processing device to:
receive a sensor signal from a sensor that is operable to sense a vibration of a flowtube having a fluid flowing therethrough, the sensor signal having a major signal component at a first frequency associated with a drive signal applied to the flowtube and a minor signal component at a second frequency associated with a contaminant of the sensor signal, the first and second frequencies being different;
determine major signal parameters of the major signal component based on an analysis of the sensor signal during a time period defined with respect to the second frequency associated with the minor signal component; and
determine a flow parameter of the fluid, based on the major signal parameters.
14. The flowmeter transmitter of
15. The flowmeter transmitter of
16. The flowmeter transmitter of
17. The flowmeter transmitter of
18. The flowmeter transmitter of
Description This application is a continuation (and claims the benefit of priority under 35 USC 120) of U.S. application Ser. No. 11/456,461, filed Jul. 10, 2006, now allowed and titled CORIOLIS MODE PROCESSING TECHNIQUES, which claims the benefit of U.S. Provisional Application No. 60/697,574, filed Jul. 11, 2005, now expired, and titled CORIOLIS MODE PROCESSING FOR FLOWMETERS, both of which are incorporated by reference in their entirety. This description relates to flowmeters. Flowmeters provide information about materials being transferred through a conduit. For example, mass flowmeters provide a measurement of the mass of material being transferred through a conduit. Similarly, density flowmeters, or densitometers, provide a measurement of the density of material flowing through a conduit. Mass flowmeters also may provide a measurement of the density of the material. For example, Coriolis-type mass flowmeters are based on the Coriolis effect, in which material flowing through a conduit becomes a mass that is affected by a Coriolis force and therefore experiences an acceleration. Many Coriolis-type mass flowmeters induce a Coriolis force by sinusoidally oscillating a conduit about a pivot axis orthogonal to the length of the conduit. In such mass flowmeters, the Coriolis reaction force experienced by the traveling fluid mass is transferred to the conduit itself and is manifested as a deflection or offset of the conduit in the direction of the Coriolis force vector in the plane of rotation. According to one general aspect, a method includes receiving a sensor signal from a sensor that is operable to sense a vibration of a flowtube having a fluid flowing therethrough. The sensor signal has a major signal component associated with a drive signal applied to the flowtube and a minor signal component associated with a contaminant of the sensor signal. The method further includes determining major signal parameters of the major signal component based on an analysis of the sensor signal during a time period defined with respect to the minor signal component; and determining a flow parameter of the fluid, based on the major signal parameters. Implementations may include one or more of the following features. For example, determining the flow parameter may include determining a mass flow rate of the fluid or a density of the fluid. The method may include modifying the drive signal for further application to the flowtube, based on the major signal parameters. The method may include determining minor signal parameters of the minor signal component based on an analysis of the sensor signal during a time period defined with respect to the minor signal component. The method also may include characterizing an external disturbance of the flowtube, based on the minor signal parameters or modifying the drive signal for further application to the flowtube, based on the minor signal parameters. In addition, the method may further include determining a minor amplitude of the minor signal component; and modifying the drive signal based on the minor amplitude, so as to reduce an influence of the minor signal component on the sensor signal. The method may include receiving a secondary sensor signal from a secondary sensor; determining secondary major signal parameters of a secondary major signal component of the secondary sensor signal; determining a first timing offset between a first true zero-crossing of the sensor signal and a first observed zero-crossing of the sensor signal; and determining a second timing offset between a second true zero-crossing of the secondary sensor signal and a second observed zero-crossing of the secondary sensor signal. Determining the flow parameter may include determining a difference between the first timing offset and the second timing offset; and determining a mass flow rate of the fluid, based on the difference. The minor signal component associated with the contaminant of the sensor signal may include a coriolis mode component associated with a coriolis mode of vibration of the flowtube. According to another general aspect, a flowmeter control system includes a signal contaminant detection system and a flow parameter determination system. The signal contaminant detection system is operable to receive a first sensor signal from a first sensor that is operable to detect a vibration of a flowtube having a fluid therein and determine first values for first contaminant parameters of a contaminant signal within the sensor signal for a first cycle of the contaminant signal, and being further operable to determine second values for second contaminant parameters of the contaminant signal within the sensor signal for a second cycle of the contaminant signal. The flow parameter determination system is operable to determine a flow parameter of the fluid, based on the sensor signal, the first values of the first contaminant parameters, and the second values of the second contaminant parameters. Implementations may include one or more of the following features. For example, the first and second values of the first and second contaminant parameters, respectively, may include values for an amplitude and phase of the contaminant signal. The flow parameter determination system may be operable to determine the flow parameter by determining first drive parameters for a first drive mode cycle of a drive mode signal within the sensor signal, and by determining second drive parameters for a second drive mode cycle of the drive mode signal, wherein the drive mode signal corresponds to a drive signal that is applied to the flowtube to maintain oscillation thereof. The flow parameter determination system may be operable to determine the first drive parameters and the second drive parameters, based on the first contaminant parameters and the second contaminant parameters. The contaminant signal may include a coriolis mode signal. The first contaminant parameters and the second contaminant parameters may differ from one another due to a change in condition of the flowtube, or of the fluid. The contaminant determination system may be operable to perform a diagnosis of the condition of the flowtube, or of the fluid, based on the difference between the first contaminant parameters and the second contaminant parameters. The system may include a drive generator that is operable to output modified drive parameters for use in generating a drive signal to be applied to the flowtube for maintaining oscillation thereof. The drive generator may be operable to determine the modified drive parameters based on the first contaminant parameters and the second contaminant parameters. The drive generator may be operable to determine the modified drive parameters such that the modified drive parameters include contaminant-canceling parameters that are designed to reduce an effect of the contaminant signal within the sensor signal. Types of flowmeters include digital flowmeters. For example, U.S. Pat. No. 6,311,136, which is hereby incorporated by reference, discloses the use of a digital flowmeter and related technology including signal processing and measurement techniques. Such digital flowmeters may be very precise in their measurements, with little or negligible noise, and may be capable of enabling a wide range of positive and negative gains at the driver circuitry for driving the conduit. Such digital flowmeters are thus advantageous in a variety of settings. For example, commonly-assigned U.S. Pat. No. 6,505,519, which is incorporated by reference, discloses the use of a wide gain range, and/or the use of negative gain, to prevent stalling and to more accurately exercise control of the flowtube, even during difficult conditions such as two-phase flow. Analog flowmeters also exist. Although such analog flowmeters may be prone to typical shortcomings of analog circuitry, e.g., low precision and high noise measurements relative to digital flowmeters, they also may be compatible with the various techniques and implementations discussed herein. Thus, in the following discussion, the term “flowmeter” or “meter” is used to refer to any type of device and/or system in which a flowmeter system, such as, for example, a Coriolis flowmeter system uses various control systems and related elements to measure a mass flow, density, and/or other parameters of a material(s) moving through a flowtube or other conduit. The digital transmitter Density measurements of the material flowing through the flowtube are related to, for example, the frequency of the motion of the flowtube The temperature in the flowtube The digital transmitter The flow meter output unit In theory, these sensor signals reflect the form, parameters, and characteristics of the vibration of the flowtube at the drive frequency applied by the drivers One example of a contaminant within the sensor signal includes harmonics of the drive frequency that may be within the sensor signals. Such harmonics may be caused by, for example, non-linearities within the sensors Another source of contaminant of the sensor signal includes other modes of vibration of the flow tube One example of the modes of vibration that may be present within the flow meter Perhaps confusingly, the coriolis force manifests at the drive frequency, and, therefore, the frequency and/or phase of the drive mode may be analyzed to determine, for example, the mass flow rate of the fluid within the flow tube In other words, there are two aspects to the coriolis mode: its oscillation at the drive frequency (associated with a measurement principle of the flow meter Referring briefly to A signal In the example Generally, though, separation (e.g., filtering) or characterization of the coriolis mode signal When the drive mode signal Also in The area In part by characterizing, accounting for, and/or identifying the offset z1, the flowmeter Referring back to In particular, the signal analyzer This general process, as well as various sub-processes, may be iteratively repeated, until a desired level of accuracy is reached with respect to characteristics of the sensor signals In the implementations described herein, then, these parameters of the sensor signal Thus, by determining an accurate representation of the drive parameters A, f, and θ, the signal analyzer Moreover, by determining the coriolis mode signal The described techniques for determining the drive and coriolis parameters A, f, θ, B, k, and φ may then be performed on a cycle-by-cycle basis (or more or less frequent, as desired). In this way, information from a previous cycle may be used in calculations (e.g., as initial estimates) performed on the next cycle. Moreover, changes in the sensor signal As described in more detail below, the signal analyzer A frequency calculator Once the frequency f and k are known, an integrator Similarly, the integrator The signal identifier For example, the integrator A second memory or database An example of an operation of the signal analyzer In summary, then, the expressions, for example, A sin(2πt+θ) and A cos(2πt+θ) represent the sensor signal As a result of these operations, a phase difference between a plurality of the sensor signals In For example, in the examples that follow, the integration interval is extended symmetrically in both directions away from the zero crossings of the drive mode signal This approach results in alterations to the integral limits of Eqs. (1) and (2), and, in particular, in addition to altering the limits themselves, alters the modulation functions, as described in more detail below. As also described below, further alteration of the modulation functions in this context allows for the mode maximization capabilities of the integrator Specifically, Eq. (5) illustrates the CS2_z1 integral. That is, using the notation above, Eq. (5) represents a form of Eq. (1) above, but with a number of points of note regarding the form and notation used with respect to Eq. (5). First, Eq. (5) includes a “B” term (i.e., B sin [2πkt+φ)]) representing the Coriolis mode signal Second, Eq. (5) has integral limits extended to encompass a full cycle of the coriolis mode, which, again, is indicated in Eq. (5) by the “B” term. Third, Eq. (5), like Eq. (1), represents the sine term of the Fourier analysis, as represented by the “S” term. Fourth, Eq. (5) has a modulation function with frequency 2 k, designated by the use of (4πk) in the modulation function and by the “2” term in the expression CS2_z1. Fifth, as designated by the z1 term in the CS2_z1 expression, Eq. (5) includes the offset value z1 in the integral limits, and thereby in the modulation function, in order to take into account an effect of the altered zero-crossing of the sensor signal
Further in the expression of Eq. (5), it should be understood that the integral limits are expressed such that a point of zero phase for the drive mode component (A term) occurs at time t=0 in Having expressed this CS2_z1 integral, an analytical expression for its value may be expressed in terms of its parameters f, k, A, z1, B, φ, and z1. As seen below, and generally speaking, analytical forms for each of the A term and the B term of Eq. (5) may be determined, and, in particular, B terms may turn out to be exactly zero. Thus, for the A term of Eq. 5, analogous to Eq. (1a), may be determined and is expressed in Eq. (6):
A corresponding expression for the B term of Eq. (5) may be determined to be zero, which was the first desired result of the integrator (mode maximizer) A corresponding analysis may be performed with respect to Eq. (2), i.e., the cosine term of the Fourier analysis. Using the notation above, Eq. (7) represents the CC2_z1 integral. That is, the first “C” again designates the integration over the fall coriolis mode cycle, the second “C” designates the fact that the cosine term is being represented, and the “2” represents doubling of the modulation frequency.
As with Eq. (6), an analytical expression for Eq. (7) may be obtained, and is shown below as Eq. (8). Thus, Eq. (8) represents the second term in the first pair of integrals output by the integrator (mode maximizer) As described below, Eqs. (6) and (8) may be used in a manner analogous to Eqs. (3) and (4) above, in order to obtain solvable expressions for A and z1, respectively. An accuracy of these values will be increased with respect to what may be calculated from Eqs. (3) and (4) when applied to a sensor signal contaminated with the coriolis mode component Further, these improved values of A and z1 may be used to more-accurately determine values for corresponding terms B and φ of the coriolis mode signal Specifically, the corresponding terms B and φ may be determined from Eqs. (9)-(14), below. In Eqs. (9)-(14), the two analogous terms CS1_z1 and CC1_z1 are determined, where again the first term “C” represents the use of integral limits corresponding to an entire drive cycle of the coriolis mode, the second term “S” or “C” represents the sine or cosine term, respectively, and the “1” term designates the use of the frequency k as the modulation frequency. Accordingly, Eq. (9) represents the CS1_z1 term, in which the only difference between Eq. (9) and Eq. (5) is that the modulation term involves a term of the form sin(2πk( . . . )) instead of sin(4πk( . . . )). Thus, Eq. (9) may be written as:
Eq. (9) has an analytical expression for the A term that is shown in Eq. (10):
Eq. (9) has an analytical expression for the B term that is shown in Eq. (11):
As seen below, the B term of Eq. (10) is maximized with respect to the A term of Eq. (11), although the A term does not go to zero. Similar analysis may be performed for the cosine term of the coriolis-emphasized (i.e., B term maximized) characterization of the sensor signal
Eqs. (13) and (14) represent the analytical expressions for the A term and B term, respectively, of Eq. (12). Further explanation and examples for the derivation and use of Eqs. (5)-(14) are provided in more detail below, and, in particular, with respect to As a result, the signal analyzer Given the above explanation, Specifically, The zero crossing detector With knowledge off and k, the integrator Accordingly, the integrator Similarly, the integrator The parameter calculator The parameter calculator Subsequently, the numerical values for the CS2_z1 and CC2_z1 integrals may be used to determine an improved value for the parameter z1 (
If the values of the drive amplitude A and the zero offset z1 are determined to be accurate ( In some implementations, the estimation/iteration process described above for A and z1 may not be necessary or desired. In these cases, the integration results ( The parameter calculator Similarly to the process
In Eq. (17), the terms “c” and “s” are numerical estimates of the integral values CC1_Bonly_z1 and CS1_Bonly_z1. They may be obtained by subtracting estimates of the influence of A in these integrals (i.e., CC1_Aonly_z1 and CS1_Aonly_z1) from the numerical values of CC1_z1 and CS1_z1, or CC1_z1_val and CS1_z1_val, as defined by the analytical results given in Eqs. (13) and (10), above. Then, as shown, the resulting values of c and s are combine in a root-sum-square manner to obtain the estimate for B. Then, the integration results CS1_z1 and CC1_z1 and determined value of z1 may be used to determine a value of φ (
If the determined values of B and φ are sufficiently accurate ( As a further alternative, and again as explained above for As described above, the process Subsequently, process Some or all of the processes Once acceptable values for f, A, and z1 are determined (specifically, once values of z1 for two different sensor Since the flow meter output unit Further, such transient effects that appear as large parameter values B and φ of the coriolis mode signal Moreover, the above-described, cycle-by-cycle, active tracking of the coriolis mode component Still further, the coriolis mode signal component Finally, and most generally, the basic flow and density calibrations of the meter may vary with the relative positioning of the frequencies of the drive and Coriolis modes respectively. Some flowtube designs are constrained to ensure that this frequency positioning is kept relatively stable over the range of operating drive frequencies of the meter. Using this form of analysis to directly track the relative positions of the drive and Coriolis frequencies, it may be possible to improve flowtube designs by removing the constraint of relative frequency positioning. Alternatively, this analysis can be used to improve the basic mass flow and density measurement on flowtube designs where it is not possible to control the relative positioning of the two mode frequencies, where mass flow and density corrections can be applied if the actual drive and Coriolis frequencies are tracked in real time. Having described the above examples of general operations In this case, the frequency k for the Coriolis mode signal For clarity, it is emphasized that the values of A, z1, B and φ given above are the “true” values which are to be deduced from the numerical values of the integrations performed on the sensor data. Thus, with reference to Similarly, the integrator Dealing with the drive parameters and drive-emphasized characterization first (as shown in Dealing with the coriolis parameters and coriolis-emphasized characterization next (as shown in As described above, these calculations may be performed on a cycle-by-cycle basis, such that the values A, B, z1, and φ may be dynamically updated on a regular basis. As a result, the impact of the Coriolis mode signal In other implementations, the entire processes of In the latter case, extra calculations may be required which make use of a value z1_offset, that may be defined as a dual value, i.e., either 0.5/f for calculations done from a negative zero crossing to a negative zero crossing, or 0.0 (no effect) for calculations done from a positive zero crossing to a positive zero crossing. In this example, then, the calculated value of z1, above, may be kept as the described value when an absolute value of z1_offset is less than or equal to 0.25/f. Otherwise, the value of z1 may be expressed as z1=z1+z1_offset. The description of As a consequence, if the frequency f is estimated based on the period between zero crossings, then the resulting estimate for f may be erroneous. Further, if the integration interval is based on these zero crossings, then additional error may be introduced, and, most importantly, an erroneous frequency will be used for the modulation function. Consequently, a parameter z2 may be incorporated into the analysis above, where z2 is defined as a time offset between the true period 1/f of the drive mode signal In the discussion below, the values of z1 and z2 may be arbitrary within certain parameters and assumptions, with the assumption, for example, that, in practice, z2 may often be assumed to be small. The expressions for the integral values that include z2, i.e., CS2_z2, CC2_z2, CS1_z2, and CC1_z2, are analytically exact, and apply to any values of z1 and z2. Hence, although the need for z1 and z2 arises from the effect of the Coriolis mode component Referring to In the first instance, then, the value z2 may be incorporated into modified versions of Eqs. (5)-(18). That is, equations may be developed for the two pairs of integrals, i.e., the drive-emphasized integrals CS2_z2 and CC2_z2, and the coriolis-emphasized integrals CS1_z2 and CC1_z2, where the designator_z2 indicates the inclusion of both offsets z1 and z2 (although z1 is not included in this notation, for brevity's sake). The resulting equations are shown as Eqs. (19)-(30). Thus, CS2_z2 may be written as Eq. (19):
It may be observed that the z2 term occurs twice in Eq. (19). Firstly, z2 occurs in the upper limit of the integral, so that it may be seen that the integration period deviates from an ideal length of 1/k seconds (i.e., a period of the coriolis mode signal The A term is given by Eq. (20): The B term is not exactly zero as above, as shown in Eq. (21): The CC2_z2 integral may be written as in Eq. (22):
The A term for CC2_z2 of Eq. (22) takes the form of Eq. (23): Having described the above drive-emphasized characterization, having the first pair of integrals CS2_z2 and CC2_z2, corresponding equations may be developed for the coriolis-emphasized characterization, including the second pair of integrals CS1_z2 and CC1_z2. Specifically, CS1_z2 may be written as Eq. (25):
The presence of z2 in the denominator of Eq. (27) may suggest that the B term goes to infinity as z2 tends to zero. However, the presence of the sin(π.k.z2) term in the numerator allows for re-arrangement of Eq. (27) in terms of the sin c function sin(π.k.z2)/(π.k.z2), which may be shown to tend towards CS1_Bonly_z1 of Eq. (11), as z2 tends to zero. Finally, CC1_z2 may be written as Eq. (28):
For Eq. (28), the A term may be written as in Eq. (29):
Further for Eq. (28), the B term, where again the sin c function sin(π.k.z2)/(π.k.z2) is included, may be written as in Eq. (30):
A full derivation and development of Eqs. (5)-(30) is provided below with respect to Specifically, the integrator As described above, and as may be seen in Eqs. (19)-(30), the CS2_z2 and CC2_z2 integration results use a modulation function having a frequency that is approximately twice that of the coriolis mode signal Additionally, these calculations may be further modified for computational convenience and improved accuracy. Specifically, in A shift in the starting point of the integral to the exact time of an ADC sample implies a corresponding shift in the (initially unknown) value of z1. However, as sampling on each of a plurality of sensor signals (i.e., from different sensors Similarly, shifting the end-point of the integral to the exact time of an ADC sample will adjust the integration period from its ideal value of the Coriolis mode period, and will, in other words, adjust the value of z2. However, given the analytical results in Eqs. (19)-(30), it is possible to compensate the integral values for a non-zero value of z2. It is thus possible to integrate over whole samples, with little or no loss of accuracy. More specifically, in order to address such sampling errors and issues, in This modification of z2 results in computational convenience and reduced processing requirements, and may be obtained by a corresponding adjustment of the value z1, without effecting a calculation of the drive amplitude A. It should be understood that such an adjustment of the value z1 will not substantially affect determination of phase difference required by the flowmeter output unit As a result of this ability to compensate for the value of z2, the modulation functions of the integrals described above may be adjusted such that the integral limits and modulation frequencies of the CS2_z2, CC2_z2, CS1_z2, and CC1_z2 integrals correspond to an exact number of samples, as shown by the integration period Existing techniques allow for integration over periods that do not start and end on exact sample boundaries, but include various errors and calculations that are included for the purpose of dealing with such integrations. These errors and calculations may be eliminated through the use of z1 and z2, as described herein. Furthermore, a significant computational effort associated with the type of Fourier integrations described herein and in the prior art is the calculation of the modulation sine and cosine functions. If the exact (or best estimate of) the instantaneous drive or Coriolis frequency is used for these integrations, then the modulation functions may need to be recalculated each time. If, however, through the use of z1 and z2, the integration time is restricted to convenient whole-sample periods, then it is possible to “cache” modulation sine and cosine values, so that recalculation thereof occurs only when there is a shift in the drive frequency f that is determined to be sufficiently large to warrant such a recalculation. Accordingly, the signal analyzer For example, in one implementation, z2 may be set so as to vary by ±0.5 of a sample period, since, for example, whenever z2 would move beyond this value, the next drive frequency (modulation set) may begin to be used. For example, the flowmeter In this way, z2 may be viewed as varying, on a cycle-by-cycle basis, to accommodate small changes in the drive frequency f, so as to avoid otherwise-necessary recalculations of modulation function values that would be caused by these frequency changes. Thus, z2 may be viewed as representing the time difference between the best estimate of the exact period of the coriolis mode component Thus, a z2_error term may be defined for each of the z2 integrals, and, specifically, may be defined as a difference between each pair of corresponding z1 and z2 analytical expressions (e.g., CS2_z2_err=CS2_z2−CS2_z1; CC2_z2_err=CC2_z2−CC2_z1, CS1_z2_err=CS1_z2−CS1_z1; and CC1_z2_err=CC1_z2−CC1_z1). The z2 error terms may be estimated analytically using the best estimates of each of the parameter values f, k, A, z1, B, φ, and z2. The value of the z2_error term may then be subtracted from the numerical value of the z2 integral calculated by the integrator With the resulting estimates of the z1 integral values, improved estimates of A, z1, B, φ may be calculated as described above, which in turn lead to improved estimates off, k, and hence z2. These improved parameter estimates can be used to provide better values for the z2_error terms, and, hence, the system of equations may be iterated to convergence. As long as z2 has a sufficiently small value (e.g., less than half a sample period), the influence of B on the CS2_z2 and CC2_z2 remains very small. Thus, good first estimates of the parameters A and z1 may be achieved by assuming z2=z2_error=0. Having described techniques for using z2 in general terms, Using the frequency values and modulation set values, the integrator Then, the parameter calculator Based on the current best estimates of z1, z2, f, k, A, B, and φ, estimates of the z2 error terms are calculated based on the analytical expressions given above:
At this point, further iterations may be made to account for errors within the calculations that are due to the presence of z2. Such phase iterations are discussed in more detail below, with respect to Subsequently, the parameter calculator
As with the determination of A and z1, additional iterations may be performed to account for errors introduced by the z2 offset. Such iterations are discussed in more detail with respect to If the values for A, z1, B, and φ are not sufficiently accurate ( Otherwise ( In contrast, the calculations of Eqs. (5)-(34) include integrations performed over a period of the coriolis signal One technique for accounting for these drive harmonics is to include a simple low pass filter as the drive harmonics removal system Additionally, or alternatively, an analysis of the sensor signal In other words, considering drive harmonics, the sensor signal Therefore, for example, once a value for A is known from the above calculations, the value of A Of course, combinations of the above techniques may be implemented. For example, a filter may be used to remove harmonics having value A Further, it may be possible to calculate improved frequencies f and k ( Examples of such techniques generally contemplate the use of the exact phase observed over each integration period of the calculation(s), and to note the shift in phase over adjacent ones of the integrations periods. Then, the calculated frequency is given by the time taken to generate a phase shift of 2π radians. For example, it should be understood that the offset value z1 essentially provided information regarding true zero crossings of the drive signal (as shown, for example, in In this formulation, it may be seen that (zc One approach is to calculate the true instant of zero crossing for the drive phase component by adjusting for the observed phase offset. The true instant of zero phase for associated with cycle n, tz It should be understood that A revised frequency k may be determined from the revised value of f. Alternatively, a similar procedure to that just described may be performed for k, using the determined value(s) for the parameter φ. For example, if φ is calculated once per cycle, then consecutive values of φ may be compared to calculate k in the above-described manner. Determining k from f as described above relies on a particular relationship between these two parameters, and, to the extent that this relationship is not exact, the value of k may generally be less accurate in the first instance than a value of f. As a result, cycle-by-cycle estimates of the coriolis frequency k may be relatively noisy. Nonetheless, averaged values of k over a given time period (e.g., one minute) will give a relatively stable estimate of the coriolis frequency k. Additionally, in some implementations, a ratio of f to k may be determined based on the improved estimates of each parameter. Then, sudden changes in the drive frequency (resulting, e.g., from changes in fluid density in the flowtube If improved frequencies are not calculated ( Similarly, In Referring first to Next, an error due to the presence of z2 is calculated and removed ( Then, using these values for CS2_z1 and CC2_z1, an improved value for A may be determined using Eq. (31) ( If the values of A and z1 are sufficiently accurate ( In Then, an error due to the presence of z2 is calculated and removed ( Analogous calculations may be performed for CC1_z2, calculating the error in CC1_z2 due to z2 using the obtained value of B ( Then, using these values for CS1_z1 and CC1_z1, an improved value for B may be determined using Eq. (33) ( If the values of B and φ are not sufficiently accurate ( Otherwise ( The descriptions of As noted above, Eqs. (1)-(4) provide the basis for a Fourier analysis of the sensor signal
The drive mode or A term is simply A/2f, and the modulation function remains sin(2πft). The analytical expression for the influence of the B term (coriolis mode) is given by Eq. (39):
Similarly, the cosine integral of Eq. 2 is shown in Eq. (40) As described, the coriolis mode shifts the positions of the zero crossings of the sensor signal
In Eq. (42), the modified modulating sine function sin [2f(t−z1)] is zero at the start and end of the integral while the A term is slightly offset. As a consequence the A term contribution to the integral may be shown as in Eq. (43):
Similarly, the cosine integral may be shown as in Eq. (45):
Beyond this, and as described above, because the coriolis mode is asynchronous, there is a different timing offset for the zero crossings at the beginning and the end of the integral. The analytical convenience is described above of denoting the time offset (from the point of true zero phase on the drive mode) at the beginning of the integral as z1, while adding the additional time offset z2 to the end of the integral period. Of course, it also may be possible to express the combined time offset as a single parameter. A further effect of the offset zero crossings is that as the zero crossings are not exactly 1/f seconds apart, the wrong modulation frequency is applied; instead of using frequency f, as above, the modulation frequency within the now-modified modulation function(s) is given by f/(1+f*z2). The size of the expressions involved suggest separating A and B terms. Thus the A integral is defined in Eq. (48) as:
The analytical value of Eq. (48) is given by Eq. (49);
As in the previous analysis, Eq. (49) contains a sin c function, only in terms of f rather than k: sin(π.f.z2)/(π.f.z2) which is well behaved as z2->0; it can be shown analytically that this expression tends to the function S1_Aonly_z1 defined above in Eq. (43) for small z2. The B integral is defined in Eq. (50) as:
The total integral value is given by the sum of the A and B terms of Eq. (49) and Eq. (51), respectively. The corresponding cosine integral is shown in Eq. (52):
Then, the B term is shown in Eq. (54):
Eqs. (48)-(54) define the influence of the coriolis mode on the integral values that are calculated, assuming the start and end points of the integral are shifted from the points of zero phase in the drive mode by z1 and z1+z2 seconds, respectively, as described. In other words, Eqs. (48)-(54) show what is calculated during an integration between zero crossings related to the drive mode signal Thus, Eqs. (48)-(54) illustrate an alternative solution approach for determining drive parameters and coriolis signal parameters. That is, given the observed zero crossings (as detected, for example, by the zero-crossing detector However, the approaches described above with respect to Thus, the approaches of Specifically, as described above, integrating over the period of the coriolis mode instead of the period of the drive mode allows for effective separation of the drive (A) and Coriolis (B) terms. Further, if the sensor signal It is for this reason that the techniques of Hence the CS2 integral, here ignoring the influence of z1 and z2, can be written as Eq. (55): The form of the integral limits and the modulation function are explained as follows. The previous assumption that the drive mode phase is close to zero at time t=0 is maintained, so the integral is extended beyond 0 . . . 1/f symmetrically, by the period ½k−½f. If the coriolis mode frequency k is lower than that of the drive frequency f, this operation results in an expansion of the integration region. If, however, the coriolis mode frequency is higher than the drive frequency, then the integration region would be reduced. The relevant equations are valid, and may be appropriately expressed, either way. The analytical value of the CS2 integral is given by Eq. (56): If a non-zero value of initial time offset, z1, is included, then the CS2 integral, or CS2_z1, may be written as above in Eq. (5): Finally, if a non-zero value of z2 and corresponding modulation frequency are used, then the CS2 integral, or CS2_z2, may be written as above in Eq. (19):
The A term is given by Eq. (20):
The B term is no longer exactly zero, as shown in Eq. (21): Thus, first assuming both z1 and z2 are zero, the CC2 integral takes the form of Eq. (57): Next allowing for a non-zero value of z1, the value CC2_z1 may be expressed as above in Eq. (7):
Finally, and most generally, allowing non-zero z1 and z2, and the resulting error in the modulation frequency, the CC2_z2 integral may be written as in Eq. (22):
Thus, the A term for CC2_z2 of Eq. (22) takes the form of Eq. (23): Proceeding through to the development of the CS1 integrals, the first CS1 integral, i.e., assuming z1 and z2 are both zero, is defined as in Eq. (58):
The analytic value of Eq. (58) is given by Eq. (59);
Assuming next a non-zero value of z1, the CS1_z1 integral is shown in Eq. (9) as:
Finally, with a non-zero z2 term, the CS1_z2 integral may be written as in Eq. (25):
The B term of Eq. (27) includes the sin c function sin(π.k.z2)/(π.k.z2), and may be shown to tend towards CS1_Bonly_z1 of Eq. (11), as z2 tends to zero. Proceeding in an analogous fashion to the above, and starting with z1 and z2 both assumed to be zero, the CC1 integral takes the form of Eq. (60):
The A term disappears, leaving only the following B term of Eq. (61):
With a non-zero value of z1, the CC1_z1 integral may be shown as above in Eq. (12):
Eq. (12) results in an A term of Eq. (13):
Eq. (13) results in a B term of Eq. (14):
Finally, with non-zero z2, the CC1_z2 integral is represented in Eq. (28) as:
For Eq. (28), the A term may be written as in Eq. (29):
Further for Eq. (29), the B term, where again the sin c function sin(π.k.z2)/(π.k.z2) in included, may be written as in Eq. (30):
Thus, the above discussion of Finally, Finally, Techniques are described above in which a sensor signal having a major (drive) signal component and a minor (e.g., coriolis) component may be analyzed so as to characterize the signal components, and, ultimately, to identify parameters of the signal components with a high degree of accuracy. As a result, highly accurate, stable, and responsive measurements may be made of a fluid within a vibratable flowtube, and a new drive signal may be generated that maintains a desired oscillation of the flowtube. In these and related techniques, it should be understood that the signal analyzer A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. Accordingly, other implementations are within the scope of the following claims. Patent Citations
Non-Patent Citations
Classifications
Legal Events
Rotate |