DE10392459B4 - Antriebstechniken für einen Digitaldurchflussmesser - Google Patents

Antriebstechniken für einen Digitaldurchflussmesser Download PDF

Info

Publication number
DE10392459B4
DE10392459B4 DE10392459.0A DE10392459A DE10392459B4 DE 10392459 B4 DE10392459 B4 DE 10392459B4 DE 10392459 A DE10392459 A DE 10392459A DE 10392459 B4 DE10392459 B4 DE 10392459B4
Authority
DE
Germany
Prior art keywords
signal
digital
sensor
driver
flow tube
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.)
Expired - Lifetime
Application number
DE10392459.0A
Other languages
English (en)
Other versions
DE10392459T5 (de
Inventor
Manus P. Henry
Mayela E. Zamora
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Schneider Electric Systems USA Inc
Original Assignee
Schneider Electric Systems USA Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=29406697&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE10392459(B4) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Schneider Electric Systems USA Inc filed Critical Schneider Electric Systems USA Inc
Application granted granted Critical
Publication of DE10392459B4 publication Critical patent/DE10392459B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F1/00Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
    • G01F1/76Devices for measuring mass flow of a fluid or a fluent solid material
    • G01F1/78Direct mass flowmeters
    • G01F1/80Direct mass flowmeters operating by measuring pressure, force, momentum, or frequency of a fluid flow to which a rotational movement has been imparted
    • G01F1/84Coriolis or gyroscopic mass flowmeters
    • G01F1/8409Coriolis or gyroscopic mass flowmeters constructional details
    • G01F1/8431Coriolis or gyroscopic mass flowmeters constructional details electronic circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F1/00Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
    • G01F1/76Devices for measuring mass flow of a fluid or a fluent solid material
    • G01F1/78Direct mass flowmeters
    • G01F1/80Direct mass flowmeters operating by measuring pressure, force, momentum, or frequency of a fluid flow to which a rotational movement has been imparted
    • G01F1/84Coriolis or gyroscopic mass flowmeters
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F1/00Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
    • G01F1/76Devices for measuring mass flow of a fluid or a fluent solid material
    • G01F1/78Direct mass flowmeters
    • G01F1/80Direct mass flowmeters operating by measuring pressure, force, momentum, or frequency of a fluid flow to which a rotational movement has been imparted
    • G01F1/84Coriolis or gyroscopic mass flowmeters
    • G01F1/8409Coriolis or gyroscopic mass flowmeters constructional details
    • G01F1/8427Coriolis or gyroscopic mass flowmeters constructional details detectors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F1/00Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
    • G01F1/76Devices for measuring mass flow of a fluid or a fluent solid material
    • G01F1/78Direct mass flowmeters
    • G01F1/80Direct mass flowmeters operating by measuring pressure, force, momentum, or frequency of a fluid flow to which a rotational movement has been imparted
    • G01F1/84Coriolis or gyroscopic mass flowmeters
    • G01F1/8409Coriolis or gyroscopic mass flowmeters constructional details
    • G01F1/8436Coriolis or gyroscopic mass flowmeters constructional details signal processing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F1/00Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
    • G01F1/76Devices for measuring mass flow of a fluid or a fluent solid material
    • G01F1/78Direct mass flowmeters
    • G01F1/80Direct mass flowmeters operating by measuring pressure, force, momentum, or frequency of a fluid flow to which a rotational movement has been imparted
    • G01F1/84Coriolis or gyroscopic mass flowmeters
    • G01F1/845Coriolis or gyroscopic mass flowmeters arrangements of measuring means, e.g., of measuring conduits
    • G01F1/8468Coriolis or gyroscopic mass flowmeters arrangements of measuring means, e.g., of measuring conduits vibrating measuring conduits
    • G01F1/8481Coriolis or gyroscopic mass flowmeters arrangements of measuring means, e.g., of measuring conduits vibrating measuring conduits having loop-shaped measuring conduits, e.g. the measuring conduits form a loop with a crossing point
    • G01F1/8486Coriolis or gyroscopic mass flowmeters arrangements of measuring means, e.g., of measuring conduits vibrating measuring conduits having loop-shaped measuring conduits, e.g. the measuring conduits form a loop with a crossing point with multiple measuring conduits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F1/00Measuring the volume flow or mass flow of fluid or fluent solid material wherein the fluid passes through a meter in a continuous flow
    • G01F1/76Devices for measuring mass flow of a fluid or a fluent solid material
    • G01F1/78Direct mass flowmeters
    • G01F1/80Direct mass flowmeters operating by measuring pressure, force, momentum, or frequency of a fluid flow to which a rotational movement has been imparted
    • G01F1/84Coriolis or gyroscopic mass flowmeters
    • G01F1/845Coriolis or gyroscopic mass flowmeters arrangements of measuring means, e.g., of measuring conduits
    • G01F1/8468Coriolis or gyroscopic mass flowmeters arrangements of measuring means, e.g., of measuring conduits vibrating measuring conduits
    • G01F1/849Coriolis or gyroscopic mass flowmeters arrangements of measuring means, e.g., of measuring conduits vibrating measuring conduits having straight measuring conduits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F25/00Testing or calibration of apparatus for measuring volume, volume flow or liquid level or for metering by volume
    • G01F25/10Testing or calibration of apparatus for measuring volume, volume flow or liquid level or for metering by volume of flowmeters

Landscapes

  • Physics & Mathematics (AREA)
  • Fluid Mechanics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Measuring Volume Flow (AREA)

Abstract

Verfahren, umfassend:Eingeben eines ersten Signals in einen Durchflussmesser, wobei das erste Signal einer Vibration eines Strömungsrohrs entspricht;Kompensieren einer Verzögerung des ersten Signals, welche Verzögerung einem dem Durchflussmesser zugeordneten Digitalelement zugeordnet ist; undAusgeben eines zweiten Signals aus dem Durchflussmesser, wobei das zweite Signal der Vibration des Strömungsrohrs entspricht,dadurch gekennzeichnet, dass das Kompensieren der Verzögerung des ersten Signals umfasst:Eingeben des zweiten Signals von einem Ausgang des Durchflussmessers in einen Eingang des Durchflussmessers;Vergleichen des zweiten Signals mit dem ersten Signal zum Bestimmen einer Phasendifferenz zwischen dem zweiten Signal und dem ersten Signal; undAusgeben eines überarbeiteten zweiten Signals aus dem Durchflussmesser, das abgeglichen ist zu dem zweiten Signal, basierend auf der Phasendifferenz,wobei das erste Signal ein erstes, einem ersten Sensor zugeordnetes Sensorsignal einschließt und ein zweites, einem zweiten Sensor zugeordnetes Sensorsignal, und das zweite Signal ein erstes, einem ersten Treiber zugeordnetes Treibersignal einschließt und ein zweites, einem zweiten Treiber zugeordnetes Treibersignal, undwobei das Vergleichen des zweiten Signals mit dem ersten Signal umfasst:Empfangen des ersten Sensorsignals und des ersten Treibersignals bei einem ersten Multiplexer;Ausgeben eines ersten multiplexierten Signals aus dem ersten Multiplexer;Empfangen des zweiten Sensorsignals und des zweiten Treibersignals an einem zweiten Multiplexer;Ausgeben eines zweiten multiplexierten Signals aus dem zweiten Multiplexer; undVergleichen des ersten multiplexierten Signals und des zweiten multiplexierten Signals, um hierdurch die Phasendifferenz zu bestimmen.

Description

  • TECHNISCHES GEBIET DER ERFINDUNG
  • Die Erfindung betrifft Durchflussmesser.
  • HINTERGRUND
  • Durchflussmesser stellen Information über Materialien bereit, die durch einen Kanal geführt werden. In ähnlicher Weise stellen Dichte-Durchflussmesser oder Densitometer eine Messung der Dichte von durch einen Kanal fließendem Material bereit. Massendurchflussmesser können auch eine Messung der Dichte des Materials bereitstellen.
  • Massendurchflussmesser vom Coriolis-Typ basieren auf dem Coriolis-Effekt, in welchem durch einen rotierenden Kanal strömendes Material zu einer radial bewegte Masse wird, die von einer Coriolis-Kraft beaufschlagt wird und dadurch eine Beschleunigung erfährt. Viele Massendurchflussmesser vom Coriolis-Typ fügen eine Coriolis-Kraft ein durch sinusförmiges Schwingenlassen eines Kanals über eine Schwenkachse orthogonal zur Länge des Kanals. In solchen Massen-Durchflussmessern wird die durch die bewegte flüssige Masse erfahrene Coriolis-Reaktionskraft auf den Kanal selbst übertragen und wird als eine Ablenkung oder ein Versatz des Kanals in Richtung des Coriolis-Kraftvektors in der Drehebene manifestiert.
  • Energie wird dem Kanal durch einen Antriebsmechanismus zugeführt, der eine periodische Kraft aufwendet, um den Kanal zu oszillieren. Eine Art des Antriebsmechanismus ist ein elektromechanischer Treiber, der eine Kraft proportional zu einem aufgewendeten Strom gewährt. In einem oszillierenden Durchflussmesser ist der aufgewendete Strom periodisch und allgemein sinusförmig. Die Periode des eingespeisten Stroms kann derart gewählt werden, dass die Bewegung des Kanals mit einem Resonanzmodus der Vibration des Kanals zusammenpasst, was allgemein die zum Erzielen der Oszillation erforderliche Energie reduziert. Ein oszillierender Durchflussmesser kann eine Rückkopplungsschleife verwenden, in welcher ein Sensorsignal, das die Momentanfrequenz und Phaseninformation in bezug auf die Oszillation des Kanals enthält, verstärkt wird und zurückgespeist wird zu dem Kanal unter Verwendung des elektromechanischen Treibers. Eine andere Art des Antriebsmechanismus wie z.B. ein elektromechanischer Treiber, der eine Kraft proportional zu einer angelegten Spannung gewährt, kann auch verwendet werden.
  • Viele konventionelle Durchflussmesser sind im wesentlichen analoge Einrichtungen, in welchen eine Sensorsignalfrequenz- und Phaseninformation verstärkt werden, beispielsweise durch einen analogen Operationsverstärker, vor dem Zurückspeisen in den elektromechanischen Treiber. In solchen Durchflussmessern mag es nur eine geringe oder keine Phasenverzögerung zwischen dem Signal bzw. den Signalen, die an dem Kanal erfasst werden, und dem Antriebssignal, das auf den Kanal angewendet wird, am anderen Ende der Rückkopplungsschleife, geben. Solche Analog-Durchflussmesser können anfällig sein in bezug auf das Einführen hoher Harmonischer einer gewünschten Oszillationsfrequenz, insbesondere während des Anlaufbetriebs, wenn ein geschätztes Antriebssignal an den Kanal angelegt wird, um die oben beschriebene Rückkopplungsschleife zu beginnen. Darüber hinaus kann ein Analog-Durchflussmesser anfällig sein in bezug auf Verstärkungssättigung des Operationsverstärkers, welcher während eines „Zwei-Phasen-Durchflusses“ durch den Kanal (z.B. eine Lufttasche oder eingeschlossene Luft in einer strömenden Flüssigkeit) auftreten kann, und welche zu einem Dämpfungseffekt auf den Kanal führen können oder dem Verzögern bzw. Abwürgen des gesamten Oszillationsprozesses. Schließlich können analoge Durchflussmesser anfällig sein in bezug auf typische Nachteile analoger Schaltungen, wie z.B. relativ geringe Präzision und hohe Rauschmessungen.
  • Im Gegensatz zu Analog-Durchflussmessern gibt es auch Digital-Durchflussmesser. Beispielsweise offenbaren die US-Patente US 6 311 136 B1 und US 6 507 791 B2 , die hierbei durch Bezugnahme aufgenommen sind, die Verwendung eines Digital-Durchflussmessers und die zugehörige Technik. Solche Digital-Durchflussmesser können verschiedene Vorteile gegenüber Analog-Durchflussmessern haben; beispielsweise können sie in ihren Messungen präziser sein mit weniger Rauschen und können imstande sein, einen weiten Bereich positiver und negativer Verstärkungen der Treiberschaltung zuzulassen. Solche Digital-Durchflussmesser sind demnach vorteilhaft in einer Vielzahl von Einstellungen. Beispielsweise offenbart US-Patent US 6 505 519 B2 die Verwendung eines großen Verstärkungsbereichs und/oder die Verwendung negativer Verstärkung zum Verhindern des Abwürgens und zum exakteren Durchführen der Steuerung des Strömungsrohrs selbst während schwieriger Bedingungen wie z.B. Zwei-Phasen-Durchfluss.
  • US 2001/ 0 045 134 A1 offenbart ein Verfahren gemäß dem Oberbegriff von Anspruch 1 bzw. ein Digitaldurchflussmeter gemäß dem Oberbegriff von Anspruch 2.
  • Der Erfindung liegt die Aufgabe zu Grunde, ein verbessertes Messverfahren bzw. ein Digitaldurchflussmeter für ein verbessertes Messverfahren anzugeben.
  • Die Aufgabe der Erfindung wird mit einem Verfahren mit den Merkmalen von Anspruch 1 bzw. einem Digitaldurchflussmeter mit den Merkmalen von Anspruch 2 gelöst.
  • Figurenliste
  • Es zeigt:
    • 1A eine Darstellung eines Digital-Durchflussmessers unter Verwendung eines gebogenen Rohrtyps;
    • 1B eine Darstellung eines Digital-Durchflussmessers unter Verwendung eines geraden Strömungsrohrs;
    • 2 ein Blockdiagramm eines Betriebs eines Digital-Durchflussmessers;
    • 3 ein Blockdiagramm des Digitalsenders der 2;
    • 4 ein Blockdiagramm eines Digital-Durchflussmessers;
    • 5 ein Ablaufdiagramm eines Positiv-Rückkopplungs-Modus des Betriebs des Systems der 4;
    • 6 ein Zeitdiagramm eines Pufferprozesses, der während des Positiv-Rückkopplungsbetriebs der 5 implementiert ist;
    • 7 ein Ablaufdiagramm eines Digital-Synthese-Modus des Betriebs des Systems der 4;
    • 8 ein erstes Zeitabstimmungsdiagramm einer Zeitabstimmung einer Synthese einer als Teil eines Treibersignals zu verwendenden Sinusschwingung;
    • 9 ein zweites Zeitdiagramm einer Zeitabstimmung einer Synthese einer als Teil eines Treibersignals zu verwendenden Sinusschwingung;
    • 10A und 10B Ablaufdiagramme von Betriebsabläufen eines Digital-Durchflussmessers;
    • 11 ein Ablaufdiagramm fernerer Betriebsabläufe eines Digital-Durchflussmessers;
    • 12 eine Darstellung eines Nulldurchgangs einer Signal-Ausgangsgröße eines Filters, verwendet in einem Betriebsablauf eines Digital-Durchflussmessers;
    • 13 eine Darstellung einer Sinusschwingung, Syntheseparameter zum Synthetisieren eines Treibersignals zeigend;
    • 14A, 14B und 14C Grafiken von Filterkennlinien eines im Betrieb eines Digital-Durchflussmessers verwendeten Filters;
    • 15 ein Blockdiagramm eines Geschlossen-Schleifensystems zum Kompensieren von Digitalverzögerung in einem Durchflussmesser;
    • 16 ein Ablaufdiagramm von Hochfahr- und Betriebstechniken für einen Digital-Durchflussmesser;
    • 17 ein Ablaufdiagramm des Zufallsabfolgemodus im Null-Ausgabe-Modus der 16 im Detail;
    • 18 ein Ablaufdiagramm des Positiv-Rückkopplungs-Modus 1608 der 16 im Detail;
    • 19A-19F eine Startabfolge für eine Implementierung eines Digital-Durchflussmessers, wie auf ein gebogenes Strömungsrohr angewendet; und
    • 20A-20F die Startabfolge der 19A-19F im Detail.
  • DETAILLIERTE BESCHREIBUNG
  • 1A ist eine Darstellung eines Digital-Durchflussmessers unter Verwendung eines gebogenen Strömungsrohrs 102. Speziell kann das gebogene Strömungsrohr 102 verwendet werden zum Messen einer oder mehrerer physikalischer Eigenschaften von beispielsweise einem (bewegten) Fluidum, wie oben erwähnt. Eine detaillierte Beschreibung eines Aufbaus und Betriebs des gebogenen Strömungsrohrs 102 ist beispielsweise in dem gemeinsam zugehörigen US-Patent US 6 311 136 B1 bereitgestellt. Strömungsrohre, die im Konzept ähnlich dem gebogenen Strömungsrohr 102 sind, werden auch beispielsweise im US-Patent US 6 327 914 B1 diskutiert, welches durch Bezugnahme in seiner Gesamtheit aufgenommen ist.
  • In 1A tauscht ein Digitalsender 104 Sensor- und Antriebssignale mit dem gebogenen Strömungsrohr 102 aus, um sowohl eine Schwingung des gebogenen Strömungsrohrs 102 zu erfassen als auch die Schwingung des gebogenen Schwingungsrohrs 102 entsprechend anzutreiben. Durch schnelles und exaktes Bestimmen der Sensor- und Treibersignale stellt der Digitalsender 104, wie oben erwähnt, schnellen und exakten Betrieb des gebogenen Strömungsrohrs 102 bereit.
  • Insbesondere dient der Digitalsender 104 zum Auswählen von Signaleigenschaften wie z.B. einer Frequenz, Phase und Amplitude der Treibersignale, um eine gewünschte Schwingung des gebogenen Strömungsrohrs 102 zu erhalten, z.B. eine Schwingung, die diese Signaleigenschaften der Sensor- und Treibersignale miteinander ausrichtet bei einer natürlichen Resonanzfrequenz des gebogenen Strömungsrohrs 102. Beispielsweise kann der Digitalsender 104 die Treibersignale erzeugen durch Anwenden der Sensorsignale (vielleicht mit geeigneten Abstimmungen) als Treibersignale, als Teil einer Rückkopplungsschleife. Als ein anderes Beispiel kann der Digitalsender 104 die Treibersignale durch Synthetisieren eines neuen Signals mit den gewünschten Eigenschaften erzeugen.
  • 1B ist eine Darstellung eines Digital-Durchflussmessers unter Verwendung eines geraden Strömungsrohrs 106. Speziell interagiert in 1B das gerade Strömungsrohr 106 mit dem Digitalsender 104 zum Erzeugen von beispielsweise Dichte- und/oder Massenstrommessungen. Solch ein gerades Strömungsrohr arbeitet ähnlich dem gebogenen Strömungsrohr 102 auf einer Konzeptebene und hat verschiedene Vorteile/Nachteile in bezug auf das gebogene Strömungsrohr 102. Beispielsweise kann das gerade Strömungsrohr 106 leichter (vollständig) füllbar und leerbar sein als das gebogene Strömungsrohr 102, einfach bedingt durch die Geometrie seines Aufbaus. Beim Betrieb kann das gebogene Strömungsrohr 102 bei einer Frequenz von beispielsweise 60-110 Hz betrieben werden, während das gerade Strömungsrohr 106 bei einer Frequenz von beispielsweise 300-1000 Hz arbeiten kann.
  • Verschiedene relevante Details des Aufbaus und Betriebs des gebogenen Strömungsrohrs 102 und/oder des geraden Strömungsrohrs 104 werden nachstehend diskutiert. Jedoch ist eine solche Beschreibung nicht dazu gedacht, eine erschöpfende Beschreibung solcher Strömungsrohre zu sein, von welchen viele konventionelle Beispiele existieren. Eher sind die hier vorgesehenen Strömungsrohr-Beschreibungen dazu gedacht, den Kontext für die nachstehende Beschreibung eines Aufbaus und Betriebs des Digitalsenders 104 bereitzustellen.
  • Spezieller ist der Digitalsender 104, wie nachstehend detaillierter beschrieben wird, imstande, eine Strömungsrohr-Oszillation zu veranlassen und aufrecht zu erhalten derart, dass die von dem Digitalsender 104 ausgegebenen Treibersignale bezüglich Phasenverzögerungen, die durch analoge und/oder digitale Elemente innerhalb des oder im Zusammenhang mit dem Digitalsender 104 verursacht werden, zu kompensieren. Auf diese Weise haben die Treibersignale einen gewünschten Phasenzusammenhang mit der Schwingung des verwendeten speziellen Strömungsrohrs (d.h., mit den am Strömungsrohr erfassten Sensorsignalen). Wie in den nachstehenden Beispielen gezeigt, kann eine solche Phasenkompensation in einer Vielzahl von Weisen für eine Anzahl von Anwendungen in unterschiedlichen Einstellungen implementiert werden. Speziell können beispielsweise die hier beschriebenen Digital-Antriebstechniken auf eine Vielzahl von Strömungsrohre und Strömungsrohr-Geometrien angewendet werden.
  • Es wird Bezug genommen auf 2, ein Digital-Massendurchflussmesser 200 schließt den Digitalsender 104 ein, einen oder mehrere Bewertungssensoren 210, einen oder mehrere Treiber 215, ein Strömungsrohr 220 (welches auch als ein Kanal bezeichnet werden kann und welches entweder das gebogene Strömungsrohr 102, das gerade Strömungsrohr 106 oder irgendeine andere Art von Strömungsrohr repräsentieren kann) und einen Temperatursensor 120. Der Digitalsender 104 kann unter Verwendung eines oder mehrerer von beispielsweise einen Prozessor (einschließlich eines digitale Signalprozessors) I (DSP)), einem Feld-programmierbaren Gate-Array (FPGA), einem ASIC, anderer programmierbarer Logik- oder Gate-Arrays oder programmierbarer Logik mit einem Prozessorkern implementiert werden. Beispiele von Implementierungen des Digitalsenders 104 werden nachstehend detaillierter diskutiert.
  • Der Digitalsender 104 erzeugt eine Messung einer durch das Strömungsrohr 215 strömenden Masse, mindestens basierend auf von dem Bewegungssensoren 205 empfangenen Signalen. Der Digitalsender 104 steuert auch die Treiber 210 zum Induzieren und Aufrechterhalten von Bewegung im Strömungsrohr 215. Diese Bewegung wird von den Bewegungssensoren 205 erfasst.
  • Massenstrom durch das Strömungsrohr 215 bezieht sich auf die in dem Strömungsrohr als Reaktion auf eine von den Treibern 210 angewendete Antriebskraft induzierte Bewegung. Speziell bezieht sich der Massenstrom auf die Phase und Frequenz der Bewegung sowie die Temperatur des Strömungsrohrs (da diese Temperatur die Temperatur des strömenden Materials widerspiegelt, welche auch direkt gemessen werden kann). Der Digital-Massendurchflussmesser 200 kann auch eine Messung der Dichte von durch das Strömungsrohr fließendem Material vornehmen. Die Dichte bezieht sich auf die Frequenz der Bewegung und die Temperatur des Strömungsrohrs. Viele der beschriebenen Techniken sind anwendbar auf ein Densitometer, das eine Messung von Dichte statt einer Messung von Massenstrom bereitstellt.
  • Die Temperatur im Strömungsrohr 215, die unter Verwendung des Temperatursensors 220 gemessen wird, nimmt Einfluss auf gewisse Eigenschaften des Strömungsrohrs wie z.B. seine Steifheit und seine Dimensionen. Der Digitalsender 104 kompensiert diese Temperaturwirkungen. Die Temperatur des Digitalsenders 104 bewirkt beispielsweise eine Betriebsfrequenz des Digitalsenders 104, eine Abtastrate eines Analog-zu-Digital-Umsetzers, und/oder eine einem von dem Sender 104 verwendeten Referenztrakt zugeordnete Quarzfrequenz. Im allgemeinen sind die Wirkungen der Sendertemperatur ausreichend klein, um als vernachlässigbar angesehen zu werden. Jedoch in manchen Fällen kann der Digitalsender die Sendertemperatur unter Verwendung einer Festkörpereinrichtung messen und kann diese Wirkungen der Sendertemperatur kompensieren. Obwohl in 2 nicht gezeigt, können ähnliche Kommentare und Überlegungen angewendet werden in bezug auf einen Drucksensor, der betreibbar ist zum Erfassen eines Drucks einer durch das Strömungsrohr 215 fließenden Flüssigkeit.
  • Wie oben erwähnt, ist das Steuern des zum Induzieren von Vibration des Strömungsrohrs 215 zum Treiber 210 gesendeten Signals ein Faktor beim Starten und Betreiben eines Digital-Durchflussmessers. Speziell ist es wünschenswert, eine präzise Steuerung über die Frequenz, Phase und Amplitude des Treibersignals aufrecht zu erhalten.
  • In bezug auf die Frequenz sollte zuerst verstanden werden, dass Strömungsrohrvibration allgemein bestimmt wird durch physikalische Eigenschaften des Strömungsrohrs 215 selbst. Insbesondere wird das Strömungsrohr 215 allgemein einen hohen Q-Faktor haben, hierdurch sicherstellend, dass nur ein sehr geringes Frequenzband um die natürliche Frequenz des Strömungsrohrs eine gering gedämpfte Antwort im gewünschten Vibrationsmodus erzeugt und hierdurch die Art des gewünschten Systembetriebs zulässt. Demnach ist es wünschenswert, die natürliche Frequenz des Strömungsrohrs so sehr wie möglich mit der Antriebs-Schwingungsform in Übereinstimmung zu bringen.
  • Ein Verfehlen des Ausführens diese Frequenzübereinstimmung wird demnach in einer in verschwenderischer Weise in das System bei anderen Frequenzen eingefügten Energie resultieren. Darüber hinaus können Frequenzen, die nahe bei (aber nicht gleich) der Resonanzfrequenz des Strömungsrohrs 215 sind, zu einem Betrieb des Strömungsrohrs 215 bei jenen Frequenzen führen. In einer solchen Situation können Fehler in den Berechnungen von beispielsweise einem Massenstrom und/oder einer Dichte des durch das Strömungsrohr 215 strömenden Fluidums resultieren.
  • Eine Art, dass ungeeignete Frequenzen während des Durchflussmesser-Hochfahrens erzeugt werden, ist durch Erzeugen von Harmonischen der natürlichen Frequenz innerhalb des Treibersignals. Allgemein gesagt, Strömungsrohre haben einige Vibrationsmodi. Gewöhnlich interessieren nur zwei Vibrationsmodi: der „Antriebsmodus“, welcher der Hauptmodus der Oszillation ist, und der „Coriolis“-Modus, bei welchem die Coriolis-Kraft manifestiert wird, was zu einer Phasenverschiebung zwischen den im Antriebsmodus beobachteten Sensoren führt. Bei „Ein-Treiber“-Strömungsrohren ist der Antriebsmodus gewöhnlich der niedrigste Vibrationsmodus des Strömungsrohrs und der Coriolis-Modus ist der nächst höchste Modus der Vibration. In einem „Zwei-Treiber“-Entwurf für das gebogene Strömungsrohr 102 kann der angetriebene Modus beispielsweise der zweite Vibrationsmodus ein (z.B. 70-90 Hz) und der Coriolis-Modus kann bei der niedrigeren Grundwellenfrequenz (z.B. 50-60 Hz) liegen. In jedem Fall führen irgendwelche anderen harmonischen Frequenzen, die jenseits dieser für einen speziellen Vibrationsmodus gewünschten liegen, zu ineffizientem und/oder ungenauen Betrieb des Systems.
  • Eine andere Art, dass die ungeeigneten Frequenzen erzeugt werden können, ist durch das Vorhandensein einer Phasenverschiebung zwischen dem Sensorsignal und dem Treibersignal. Das heißt, wenn diese Phasenverschiebung zunimmt, ändert sich die Vibration von bei der gewünschten natürlichen Frequenz liegend zu einer aufgezwungenen Oszillation. Da Dieser Phasenversatz üblicherweise eine Funktion der Frequenz ist (z.B. kann eine konstante Zeitverzögerung von 5 ms einem Phasenversatz von 180 Grad bei 100 Hz entsprechen, aber kann 360 Grad (d.h., 0 Grad) bei 200 Hz entsprechen), wird ein Phasenversatz nahe bei 180 Grad für eine spezielle Frequenz üblicherweise zu einem Blockieren der Oszillation bei dieser Frequenz führen. Umgekehrt wird ein Phasenversatz nahe bei einem Mehrfachen von 360 Grad für eine gegebene Frequenz häufig zu einer Oszillation im Strömungsrohr 215 bei dieser Frequenz führen (selbst wenn es nicht die gewünschte natürliche Frequenz ist).
  • Auch in bezug auf die Phase sollte verstanden werden, dass wie bekannt die Treiber-Schwingungsform um 90 Grad phasenverschoben sein sollte in bezug auf die Bewegung des Strömungsrohrs, um eine Vibration bei der natürlichen Resonanzfrequenz zu bewirken. Wenn jedoch ein Strömungsrohr-Design Geschwindigkeitssensoren verwendet, welche automatisch ein Signal um 90 Grad zur Bewegung des Strömungsrohrs bereitstellen, dann ist die optimale Antriebs-Schwingungsform eine, die in Phase mit den Sensorspannungssignalen ist. Demnach sollte verstanden werden, dass die Ausdrücke wie z.B. „in Phase“, „mit der geeigneten Phase“, „mit dem geeigneten Phasenversatz“ und ähnlicher Ausdrücke, sich auf die Bedingung beziehen, in welcher das Antriebssignal in einem derartigen Zusammenhang zu dem Sensorsignal steht, dass es eine geeignete Vibration des Strömungsrohrs bewirkt.
  • Sobald die Vibration der geeigneten Frequenz veranlasst und beibehalten worden ist, muss die Amplitude des Treibersignals derart festgelegt werden, dass eine geeignete Energiemenge (und demnach Amplitude der Vibration bei der gewählten Frequenz) tatsächlich in das Strömungsrohr eingebracht wird. Idealerweise sollte die Amplitude regelmäßig aktualisiert werden, um eine konstante Amplitude der Schwingung des Strömungsrohrs sicherzustellen.
  • Wie oben erwähnt, können Implementierungen unterschiedliche Techniken zum Erhalten von Antriebssignalen verwenden, welche die gewünschten Frequenz-, Phasen- und Amplituden-Eigenschaften haben. Eine solche Technik wird hier als „Positiv-Rückkopplung“ bezeichnet, in welcher ein Sensorsignal (mit der gewünscht Frequenz- und Phaseneigenschaft) multipliziert wird mit einem Antriebsverstärkungsfaktor (entweder durch Analog- oder Digital-Steuerschleifentechniken) und über das Treibersignal zu dem Strömungsrohr zurückgeführt wird. Ein nicht-linearer Amplituden-Steueralgorithmus kann verwendet werden zum Bereitstellen stabiler Schwingung und die Auswahl eines aufrecht zu erhaltenden Einstellpunktes für eine Amplitude der Schwingung, selbst während Situationen, wie einem stark bedämpften Betrieb des Strömungsrohrs 215 (z.B. Zwei-Phasen-Durchfluss) oder Anfangs-/Endbetrieb des Strömungsrohrs 215 in einem leeren Zustand.
  • Während diese Methode von sich aus in einigen konventionellen Durchflussmesser-Anwendungen geeignet sein kann, kann sie gegebenenfalls nicht wirksam sein, wenn mit schwierigen Situationen wie z.B. dem Laden zu oder vom Leerzustand oder Zwei-Phasen-Durchfluss fertig zu werden ist und in diesen Fällen kann gegebenenfalls Strömungsrohrabwürgen auftreten, bei dem die Schwingung vergeht und keine Messung berechnet werden kann.
  • Eine zweite Technik zum Erzeugen gewünschter Treibersignale ist die Digitalsynthese der Treibersignale. Das heißt, statt des einfachen Rückkoppelns der Sensorsignale als Treibersignale kann ein Digitalsender 104 tatsächlich reine Sinuswellen mit den gewünschten Treibersignal-Eigenschaften synthetisieren. Wie in dem Fall der obigen positiven Rückkopplung kann ein nicht-linearer Steueralgorithmus verwendet werden zum Bereitstellen stabiler Schwingungs- und Amplitudeneinstellpunktauswahl.
  • Darüber hinaus führt die Verwendung von Digitalsynthese von Treibersignalen zu einer hohen Genauigkeit beim Erzeugen der Treibersignale und verhindert die Rückkopplung unerwünschter Frequenzkomponenten, die in den Sensorsignalen vorliegen könnten. Jedoch können die Verwendung des digitalen Senders 104 sowie andere Faktoren Verzögerungen in die hoch präzisen synthetisierten Signale (sowie in die Rückkopplungs-Sensorsignale in dem Positiv-Rückkopplungs-Modus), bezogen auf die ursprünglich erfassten Sensorsignale, einfügen. Diese Verzögerungen, wenn nicht berücksichtigt, können in der Verwendung von Treibersignalen mit unerwünschten Signaleigenschaften resultieren. Beispiele von Quellen solcher Verzögerungen sowie Techniken zum Behandeln von Verzögerungen in verschiedenen Einstellungen werden nachstehend detaillierter diskutiert.
  • 3 ist ein Blockdiagramm des Digitalsenders 104. In 3 schließt ein CODEC-Block (Codierer-Dekodierer-Block) 305 Analog/Digital-Umsetzer (A/D-Umsetzer) ein und Digital-zu-Analog-Umsetzer (D/A-Umsetzer) (wie in 4 detaillierter gezeigt). Das CODEC 305 fügt beim Ausführen seiner Umsetzungs-/Rückumsetzungs-Operationen Verzögerungen in hindurchlaufende Signale ein, welche nachstehend als Gruppenverzögerung des CODEC 305 bezeichnet werden können. Für eine gegebene CODEC-Gruppenverzögerung (in Abtastungen) resultiert ein hoher Phasenversatz (in Grad/Radianten) von einer hohen Frequenz der Vibration des Strömungsrohrs 215 (da es weniger Abtastwerte pro Periode gibt in diesem Fall). Das CODEC 305 kann beispielsweise eine duale A/D-/D/A-Umsetzeinrichtung sein, die zwei 24 Bit A/D-Umsetzer- und zwei 24 Bit D/A-Umsetzkanäle bereitstellt bei einer Abtastrate Fs von 40 kHz.
  • Ein feldprogrammierbares Gate-Array (FPGA) 310 stellt Gatter programmierbarer Logik bereit, welche es dem FPGA 310 erlauben, kritische Echtzeit-Aufgaben auszuführen. Diese Aufgaben schließen beispielsweise die Synthese von Treibersignal-Schwingungsformen und die periphere Steuerung sowie verschiedene Puffer- und Filtertechniken ein, die auf die Sensorsignale angewendet werden. Ein Prozessor 315 wird zum Ausführen hochpräziser und rechenintensiver Algorithmen zum Messen und Steuern von bei dem Durchflussmesser 200 involvierten Variablen verwendet. Beispielsweise steuert der Prozessor 315 das FPGA 310 in seinen Aufgaben. Der Prozessor kann unter einem Betriebssystem, wie z.B. dem „VxWorks Real-Time Operating System“ arbeiten. Ein Block 320 repräsentiert einen Sigma-Delta-Analog-Digital-Umsetzer, der mit eine Widerstandstemperatur-Einrichtung (RTD) kommuniziert zum Erhalten von Strömungsrohr-Temperaturdaten.
  • Es sollte verstanden werden, dass wie oben erwähnt alle von dem FPGA 310 und/oder Prozessor 315 ausgeführten Aufgaben nur von dem Prozessor 315 ausgeführt werden könnten und/oder durch andere geeignete Hardware wie z.B. ein ASIC. Die Architektur des Digitalsenders 104 der 3 spaltet jedoch die Aufgabe zwischen dem FPGA 310 und dem Prozessor 315 in gerade der beschriebenen Weise auf, den Vorteil der Tatsache nutzend, dass die von dem FPGA 310 ausgeführten Aufgabe wirksamer und effizienter in echter Parallelität zu dem Prozessor 315 ausgeführt werden können in dedizierter Hardware statt durch Zeitaufteilung in dem (einzelnen) Prozessor 315.
  • In einem Betriebsablauf werden dann Sensorsignale von den Sensoren 205 durch zwei Analog/Digital-Umsetzer-Kanäle in dem CODEC 305 empfangen, welches gesteuert von dem FPGA 310 arbeitet. Nach der Verarbeitung, Pufferung und/oder Filterung der Sensorsignale präsentiert der FPGA 310, wie nachstehend detaillierter beschrieben, die Daten dem Prozessor 315 zur detaillierten Analyse.
  • In einer Implementierung werden Sensorsignale durch die Eingangskanäle des CODECs 305 eingegeben, innerhalb des FPGA 310 gepuffert und durch die Ausgangskanäle des CODECs 305 zu dem Strömungsrohr 215 als Treibersignale innerhalb eines Positiv-Rückkopplungsschleife zurückgeführt. In einer anderen Implementierung bestimmt der Prozessor 315 auch Treibersignal-Parameterwerte für das Aufrechterhalten der Strömungsrohr-Schwingung, welche dann zu dem FPGA 310 geführt werden, der die erforderlichen Treiber-Ausgangssignale synthetisiert und sie zu den Ausgangskanälen des CODECs 305 leitet. Daher werden in diesen und anderen nachstehend diskutierten Implementierungen Treibersignale zu Treibern 310 geleitet, die eine stabile Schwingung des Strömungsrohrs 215 bei einer gewünschten Frequenz erzeugen.
  • Zusätzlich zu seiner sich auf dieses Erzeugen gewünschter Treibersignale beziehenden Verarbeitung bestimmt der Prozessor 315 auch Messungen verschiedener Prozessvariablen von den Sensorsignalen, wie z.B. Massenstrom und/oder Dichte, deren Bestimmen einen primären Zweck des Betriebs des Digital-Durchflussmessers 200 repräsentieren kann. Für Zwecke des Bestimmens dieser Messungen können dem Prozessor 315 Sensorsignale präsentiert werden, die weit weg von (beispielsweise parallel zu) den verschiedenen hier diskutierten Techniken liegen, zum Erzeugen gewünschter Treibersignale.
  • Beispielsweise, obwohl verschiedene Puffertechniken nachstehend für den Zweck des Erzeugens der Treibersignale diskutiert werden, kann separate (schnellere) Pufferung der Sensorsignale durchgeführt werden zum Senden der Sensorsignale zu dem Prozessor 315 für Messzwecke. Auf diese Weise können Messungen rasch erhalten werden, ohne auf die Verarbeitung der Sendersignale warten zu müssen, die sich auf Treibersignalerzeugung bezieht. Beispielsweise kann der Digital-Durchflussmesser 200 imstande sein, rasch auf Impulssignale zu antworten (z.B. darauf bezogene Messungen ausgeben), die in den Sensorsignalen enthalten sind.
  • Wie oben erwähnt, sind dem Digitalsender 104 verschiedene Quellen von Verzögerung zugeordnet. Eine mögliche Quelle von Verzögerung ist die Gruppenverzögerung, die mit dem CODEC 305 einhergeht. Eine andere mögliche Verzögerungsquelle ist das Filtern, welches innerhalb des FPGA 310 stattfinden kann, z.B. Filtern, welches entworfen ist zum Entfernen unerwünschter Harmonischer von den durch den Sensor 105 erfassten Sensorsignalen (speziell während des Hochfahrens des Durchflussmessers), und/oder Filtern, das entworfen ist zum Verbessern der Messqualität (z.B. Reduzieren von Rauschen während Zwei-Phasen-Durchfluss oder Erhöhen der Präzision für eine Reingasmessung). Andere mögliche Quellen von Verzögerung schließen die Verwendung von Sperrschaltungen an dem Treiberausgang ein, welche als eine Sicherheitsmaßnahme eingeschlossen sein können, oder Signalverschiebung bedingt durch Temperatureffekte und/oder Alterungskomponenten. Solche analogen/oder digitalen Verzögerungen wie jene gerade erwähnten, sowie andere Verzögerungen, die nicht explizit diskutiert sind, können zu nicht-trivialen Phasenverschiebungen der gewünschten (natürlichen) Frequenz der Vibration des Strömungsrohrs 215 führen.
  • Kompensationstechniken für jene Verzögerungen können beispielsweise von der Art der tatsächlich vorliegenden Verzögerung abhängen und/oder einem momentanen Betriebsmodus des Digitalsenders 104. Wenn beispielsweise der Digitalsender 104 in einem Positiv-Rückkopplungs-Modus betrieben wird, kann die Gruppenverzögerung des CODEC 305 basierend auf beispielsweise der Art des verwendeten CODECs berechnet werden, eine Anzahl von Messungs-Abtastwerten werden mit einer vorgegebenen Abtastrate aufgenommen und/oder eine Resonanzfrequenz eines speziellen verwendeten Strömungsrohrs. Ein Puffer kann dann eingeschlossen sein, der das Sensorsignal vor der Eingabe in den Treiber 210 verzögert, bis eine Phasenübereinstimmung zwischen dem Sensorsignal und dem Treibersignal auftritt. Beispielsweise kann die Ausgangswellenform des Sensors 205 innerhalb des FPGA 310 gepuffert werden und eine Verzögerung kann aus der gepufferten Ausgangswellenform ausgewählt werden, die dem momentanen Phasenpunkt des Sensorsignals entspricht, aber von der vorangegangenen Periode des Signals.
  • Als anderes Beispiel, wenn der Digitalsender 104 entweder in einem Positiv-Rückkopplungs-Modus oder einem Synthese-Modus betrieben wird, kann das Filtern des Sensorsignals zusätzlich zu der Gruppenverzögerung des CODEC 305 eine Verzögerung bereitstellen. Abhängig von der Art des verwendeten Filters kann diese Filterverzögerung schwieriger vorherzusagen sein als die Gruppenverzögerung des CODECs 305. Beispielsweise in einem elliptischen Filter wie z.B. dem nachstehend beschriebenen, kann eine durch das Filter verursachte Verzögerung eine nicht-lineare Funktion der Frequenz sein. Darüber hinaus kann zu einem gegebenen Zeitpunkt (beispielsweise bei oder nahe bei einem Hochfahren der Schwingung des Strömungsrohrs 215) eine natürliche Frequenz des Strömungsrohrs 215 nicht exakt bekannt sein, was ein Bestimmen einer Filterverzögerung selbst noch problematischer machen kann.
  • In einer Ausführungsform wird dann die Filterverzögerung durch tatsächliche Messung einer geeigneten Frequenz bestimmt, die zugeordnete Filterverzögerung unter Verwendung der vorbestimmten nicht-linearen Funktion bestimmend, welche dem verwendeten Filter zugeordnet ist, und dann Abwarten einer vorbestimmten Zeitdauer, nachdem ein Auslöse- bzw. Triggersignal zum Starten der Treibersignal-Synthese begonnen hat. Beispielsweise kann die vorbestimmte Zeitdauer aus der Bedingung sowohl der Gruppenverzögerung als auch der Filterverzögerung bestimmt werden. Das Auslöse- bzw. Triggersignal kann ein positiver Nulldurchgang einer gewichteten Summe der gefilterten Sensorsignale (d.h., ein berechneter Zwischenpunkt zwischen zwei separaten Signalen) oder von nur einem der gefilterten Sensorsignale sein.
  • 4 ist ein Blockdiagramm eines Digital-Durchflussmessers 400. In 4 empfängt ein Strömungsrohr 215 einen Fluidstrom durch einen Einlass 405 und gibt das Fluidum durch einen Auslass 410 aus. Sensoren und Treiber 205 und 210 arbeiten jeweils allgemein, wie unter Bezugnahme auf 2 beschreiben. A/D-Umsetzer 415 empfangen die Sensorsignale und setzen die Analogsignale in Digitalsignale bei einer Abtastrate von beispielsweise 40-80 kHz oder höher um zum Eingeben in den Digitalsender 104. Analog/Digital-Umsetzer 415 können als Teil des CODEC 305 der 3 betrachtet werden.
  • Ein Digitalcontroller 420 empfängt die abgetasteten Sensorsignale zur Verarbeitung. Der Digitalcontroller 420 kann den FPGA 310 und den Prozessor 315 der 3 einschließen oder kann irgendeine andere Kombination von Hardware und/oder Software zum Verarbeiten der abgetasteten Sensorsignale und Ausgeben eines geeigneten Treibersignals einschließen.
  • Wie oben erwähnt, wählt der Digitalcontroller 420 einen Verstärkungsfaktor für die Treiber 210, basierend auf durch die Sensoren 205 erfassten Spannungen, um eine gewünschte Amplitude der Strömungsrohr-Oszillation zu erreichen. In einer Implementierung arbeitet eine solche Verstärkungsfaktorauswahl bei einer langsamen Rate bezogen auf die Resonanzfrequenz des verwendeten Strömungsrohrs (z.B. kann der Treiber-Verstärkungsfaktor nur einmal pro Periode oder Halbperiode aktualisiert werden von beispielsweise 80-160 Hz). Dies ist, weil für die Oszillationsstabilität eine exakte Messung der Amplitude wichtiger ist als ein sehr rasches Aktualisieren der Treiberverstärkung, und eine auf der kompletten Periode von Daten basierende Amplitudenberechnung kann demnach exakte Schätzungen bereitstellen.
  • In einem Digital-Durchflussmesser 400 kann während einer Positiv-Rückkopplungsoperation ein Puffer 425 verwendet werden. Ein Beispiel dieser Positiv-Rückkopplungsoperation wird beispielsweise nachstehend unter Bezugnahme auf 5 beschrieben. In der Positiv-Rückkopplungsoperation speichert der Puffer 425 Abtastwerte des von dem Analog/Digital-Umsetzer 415 empfangenen Signals und gibt ein Signal an die Digital/Analog-Umsetzer 430 ab derart, dass das von dem Digital/Analog-Umsetzer 230 ausgegebene und als Treibersignal zu dem Treiber 210 gelieferte Signal im wesentlichen in Phase ist mit dem ursprünglich bei dem Analog/Digital-Umsetzer 215 empfangenen Signal. Auf diese Weise wird eine Positiv-Rückkopplungsschleife aufrecht erhalten, welche ein Erzeugen einer Treibersignal-Schwingungsform mit dem gewünschten Phasenzusammenhang bezüglich der Sensorsignal-Schwingungsform zulässt.
  • Operationsverstärker 435, Widerstände 440 und Analog/Digital-Umsetzer 445 arbeiten zum Messen des Stroms zu den Treibern 210 und führen diese Information in Digitalform zu dem Digitalcontroller 420 zurück. Auf diese Weise wird eine Rückkopplungsschleife aufrecht erhalten, die eine zusätzliche oder alternative Technik zum Kompensieren der Quellen der oben erwähnten Verzögerung ermöglichen. In irgendwie ähnlicher Weise können ferner Analog/Digital-Umsetzer 447 zum Messen einer Spannung an einem Ausgang des Digital/Analog-Umsetzers 430 verwendet werden, welche in ähnlicher Weise zu dem Digitalcontroller 420 zurückgekoppelt werden kann. Solche Geschlossenschleifentechniken werden unter Bezugnahme auf 15 detaillierter beschrieben.
  • In dem Beispiel der 4 können die Analog/Digital-Umsetzer 415 eine Verzögerung von 31 Abtastungen einfügen, während ein Digital/Analog-Umsetzer 430 eine Verzögerung von 30 Abtastungen einfügt zu einer Gesamtgruppenverzögerung (CODEC) von 61 Abtastungen. Eine Abtastrate von 40 kHz angenommen und eine Eingangswellenform von 95 Hz, kann ein Phasenversatz von näherungsweise 50 Grad eingefügt werden. Dieser Grad an Phasenversatz kann ausreichend sein, um ein Schwingen des Durchflussmessers außerhalb der Resonanz zu verursachen. Mit anderen Abtastungs-/Oszillationsfrequenzen können Phasenversätze von annähernd 180 Grad, erstellt werden, in welchem Fall das Strömungsrohr wahrscheinlich nicht in dem gewünschten Modus schwingen wird, sondern eher einen anderen höheren Schwingungsmodus finden wird, wo der Phasenversatz näher an einem Vielfachen von 360 Grad ist.
  • Der Puffer 425 ist groß genug, um mindestens eine volle Periode von Daten, z.B. 2048 Einträge, zu enthalten. Der Puffer 425 kann ein Ringpuffer sein, so dass der älteste Eintrag überschrieben wird von dem neuesten Eintrag. Wenn eine Abtastrate von 80 kHz angenommen wird, wenn die Frequenz des Strömungsrohrs 80 Hz ist, dann kann eine volle Periode innerhalb von 1000 Abtastwerten erhalten werden. Zum Zwecke des Beispiels sei noch eine Gruppenverzögerung von 61 Abtastungen angenommen, dann sollte der Digitalsender 104 den Wert aus dem Puffer 425, der 939 Abtastwerte vorher gespeichert worden ist, auswählen, um irgendwelchen Phasenversatz zwischen den Sensor- und Treibersignalen zu reduzieren oder eliminieren. Mit anderen Worten, der Puffer 425 sollte den Wert entsprechend dem tatsächlichen Stromphasenpunkt auswählen, aber aus der vorangegangenen Periode. Diese „phasenabgestimmte Ausgangsgröße“ wird dann mit der gewünschten Treiberverstärkung multipliziert, um die Treiber-Ausgangsgröße zu liefern. In einer Implementierung war die oben beschriebene Verwendung von Puffer 425 ausreichend zum Reduzieren von Phasenversatz innerhalb einer CODEC-Abtastung, d.h. bei 95 und 80 kHz, ± 0,4 Grad. Eine detailliertere Diskussion in bezug auf das Bestimmen einer CODEC-Verzögerung bezogen auf eine gegebene Abtastrate und eine Strömungsrohr-Frequenz wird nachstehend unter Bezugnahme auf 5, 6 und 16-18 bereitgestellt.
  • 5 ist ein Ablaufdiagramm 500 zum Zeigen eines Positiv-Rückkopplungs-Modus des Betriebs des Systems 400 der 4. In 5 leitet ein Prozessorbus 502 Information zwischen dem Digitalcontroller 420 und anderen Komponenten des Digitalsenders 104 weiter. In dem Ablaufdiagramm 500 werden Ausgangsgrößen der Analog/Digital-Umsetzer 415 durch den Digitalcontroller 420 als Daten des linken Sensors (505) und rechten Sensors (510) eingegeben. Die Daten des rechten Sensors werden multipliziert (515) mit einem Sensorausgleichsterm (520), welcher ein Verhältnis zwischen den Amplituden der linken und rechten Sensorsignale repräsentiert. Üblicherweise wird dieses Verhältnis als nahe bei 1,0 erwartet. Multiplizieren der Daten des rechten Sensors mit dem Sensorausgleichsterm stellt sicher, dass sie dieselbe Amplitude haben wie die Daten des linken Sensors vor dem Bilden einer gewichteten Summe der beiden Signale (525), was wiederum das Einfügen unerwünschter Harmonischer bei der Summenbildung verhindert. Die gewichtete Summe kann dahingehend geeignet sein, dass sie eine Repräsentation eines einzelnen Sensorsignals bereitstellt, d.h., ein virtuelles Signal, das beispielsweise einen Durchschnittswert zwischen dem linken und rechten (tatsächlichen) Sensorsignal repräsentiert. Solch ein virtuelles Signal ermöglicht beispielsweise das Durchführen von Berechnungen ohne die Betrachtung einer Phasendifferenz, die zwischen Sensorsignalen von den rechten und linken Sensoren vorliegen könnte. Jedoch, wie nachstehend detaillierter diskutiert, ist es nicht erforderlich, die virtuelle gewichtete Summe zu berechnen, weil irgendeines der tatsächlichen Sensorsignale individuell als Grundlage für fernere Berechnungen verwendet werden könnte.
  • Welcher Sensorsignaltyp auch immer verwendet wird, wird dann in einem Ringpuffer (530) wie z.B. dem Puffer 425 gepuffert. Es sollte verstanden werden, dass der Puffer 425 als ein synthetischer Puffer innerhalb des FPGA 310 implementiert werden kann oder ein separates Schaltungselement sein könnte oder irgendeine andere konventionelle Form annehmen könnte wie z.B. ein Speicher, der zum Implementieren eines Pufferprozesses bekannt ist.
  • Der Pufferumfang hängt von einer Maximalzahl von Abtastwerten ab, die über eine volle Periode des Sensorsignals bzw. der Signale bei der ausgewählten (Betriebs-) Frequenz genommen werden. Beispielsweise entspricht für eine Abtastrate von 10 kHz und eine Betriebsfrequenz von 100 Hz jede Schwingungsperiode des Strömungsrohres 100 Abtastwerten, die in dem Puffer 425 zu speichern sind. Alternativ entspricht für eine Abtastrate von 10 kHz mit einer Betriebsfrequenz von 50 Hz jede Periode 200 in dem Puffer 425 zu speichernden Abtastwerten.
  • Ein Phasenübereinstimmungs-Verzögerungsterm 435 wird verwendet zum Auswählen einer Ausgangsgröße des Puffers 425, die zu einem momentanen Phasenpunkt korrespondiert, aber von einer vorangegangenen (gespeicherten) Periode. Auf diese Weise wird ein phasenabgestimmtes Treibersignal erzeugt und ausgegeben (540); mit anderen Worten, ein Treibersignal mit einer Phase, die abgestimmt ist auf das (die) Sensorsignal(e) wird ausgegeben und an den Treiber 210 geliefert zum Oszillieren lassen des Strömungsrohres 215.
  • Wie in 6 detaillierter gezeigt, bezieht dieser Prozess des Phasenabstimmens ein Korrelieren einer gegebenen CODEC-Verzögerung mit einer Anzahl von in dem Puffer 425 gespeicherten Abtastwerten ein. Beispielsweise, wie oben unter Bezugnahme auf 3 und 4 diskutiert, kann eine CODEC-Verzögerung 61 Abtastungen sein. Wenn der Puffer 100 Abtastwerte pro Periode speichert (z.B. wie in dem obigen Beispiel bei 10 kHz Abtastrate und 100 Hz Strömungsrohr-Schwingung), dann ist zu einem gegebenen Zeitpunkt der 39 Abtastwerte vorher gespeicherte Abtastwert der eine, welcher, wenn ausgegeben, einem momentanen Wert des Sensorsignals bzw. der Signale entspricht. In dem Beispiel von 200 Abtastwerten pro Periode (d.h. angenommen eine 10 kHz Abtastrate und 50 Hz Resonanzfrequenz), würde dann der geeignete auszuwählende gepufferte Wert der sein, der 139 Abtastwerte zuvor gespeichert worden ist.
  • Wenn einmal bestimmt, kann das phasenabgestimmte Treibersignal dann multipliziert werden (545) mit einem gegebenen Treiber-Verstärkungsterm (550), so dass eine gewünschte Treibersignal-Ausgangsgröße erzeugt wird (555). Daraufhin kann die Treibersignal-Ausgangsgröße in eine linke Treibersignal-Ausgangsgröße (560) und eine rechte Treibersignal-Ausgangsgröße (565) getrennt werden (alternativ, in dem Fall eines Ein-Treiber-Systems kann nur eine Treibersignal-Ausgangsgröße produziert werden und/oder als Treibersignal verwendet werden). Abhängig davon, ob der Prozessor einen Coriolis- oder Antriebsmodus (570) auswählt, ist der rechte Treiberausgang gleich dem linken Treiberausgang bzw. dem Kehrwert davon. Schließlich wird ein ausgeglichener Treiberterm (575) auf den rechten Treiberausgang (580) angewendet, um eine Feinabstimmung der Treiberabstimmung zu ermöglichen und Analogschaltungsschwankungen, die vorliegen können, zu kompensieren, hierdurch eine ausgewogene rechte Treiber-Ausgangsgröße erzeugend (585).
  • 6 ist ein Zeitdiagramm zum Zeigen eines während des Positiv-Rückkopplungsbetriebs der 5 implementierten Pufferprozesses. In 6 repräsentiert ein erstes Signal 602 ein von dem Sensor bzw. den Sensoren 205 erfasstes Sensorsignal. Das Signal 602 kann eine (virtuelle) gewichtete Summe von mehreren Sensor-Ausgangsgrößen repräsentieren, wie in 5 gezeigt, oder kann irgendeine andere Kombination von Sensorsignalen oder ein einfaches Sensorsignal repräsentieren.
  • Ein Signal 604 repräsentiert das Signal 602, nachdem es einen Analog/Digital-Umsetzer 415 durchlaufen hat und in dem Puffer 425 gepuffert worden ist. In 6 hat das Signal 602 eine Verzögerung 606 erfahren, die einer CODEC-Verzögerung entspricht, welche dem Signal 604 durch den bzw. die Analog/Digital-Umsetzer 415 eingeprägt worden ist. Wie oben beschrieben, ist bzw. sind das bzw. die Signal(e) 602/604 in einem Positiv-Rückkopplungs-Betriebsmodus durch einen bzw. mehrere geeignete Treiberverstärkungsfaktoren zu multiplizieren und zu dem Treiber 210 als Treibersignal zurückzuspeisen. Jedoch, wie oben erwähnt und in 6 dargestellt, würde die Verwendung des Signals 604 als Treibersignal zu einer unerwünschten Phasenverschiebung zwischen dem Sensorsignal 602 und dem scheinbaren Treibersignal 604 führen. Tatsächlich würde dieser Phasenversatz ferner verschlimmert werden durch eine durch den Digital/Analog-Umsetzer 430 eingeprägte Verzögerung. Solch ein Phasenversatz würde in einer sub-optimalen Durchflussmesser-Performance resultieren, wie z.B. einer reduzierten Amplitude, einer Schwingung bei einer ungewünschten Frequenz oder einem vollständigen Ausfall des Strömungsrohrs 215.
  • Daher wird statt des einfachen Rückkoppelns des Signals 604 zurück in den Treiber 430 mindestens eine volle Periode des Signals 604 innerhalb des Puffers 425 gepuffert. Zu einem Zeitpunkt, der durch eine Linie 608 angegeben ist, ist eine vollständige Periode des Signals 604 innerhalb des Puffers 425 gepuffert worden. Auf diese Weise kann ein Abtastwert 610 von der gespeicherten Periode ausgewählt werden und ein Signal 612 wird durch den Puffer 425 ausgegeben, der mit dem Abtastwert 610 startet (wie klar sein sollte, kann das aus Gründen der Darstellung getrennt gezeigte Signal 612 auch als zeitverschobene Version des Signals 604 gedacht werden).
  • Es sollte bemerkt werden, dass das Signal 612 nicht in Phase ist mit dem Ursprungs-Sensorsignal 602. Dies ist, weil, wie oben beschrieben, der Abtastwert 610 ausgewählt wird unter Berücksichtigung der gesamten CODEC-Gruppenverzögerung (z.B. 61 Abtastungen in dem Beispiel der 4 und 5), nicht nur der dem Analog/Digital-Umsetzer 415 zugeordneten Verzögerung. Mit anderen Worten, auf das Eingespeistwerden in den Digital/Analog-Umsetzer 430 erfährt das Signal 612 eine entsprechende Verzögerung 614, die bereits während des Auswählens des Abtastwertes 610 betrachtet worden ist.
  • Demnach wird nach dem Multipliziertwerden mit einem Verstärkungsfaktor und vor dem Ausgegebenwerden durch den Digital/Analog-Umsetzer 430 ein Treibersignal 616 erzeugt. Wie gezeigt, ist das Treibersignal 616 im wesentlichen in Phase mit dem Ursprungs-Sensorsignal abgesehen von der beispielsweise dem CODEC 305 zugeordneten Verzögerungen.
  • Wie gerade beschrieben, basiert die Auswahl eines geeigneten gepufferten Wertes als Wert 610 beispielsweise auf der Abtastrate des CODEC 305, einer dem CODEC 305 zugeordneten Gruppenverzögerung und der Betriebsfrequenz des angetriebenen Strömungsrohrs. Jedoch speziell während des Hochfahrens des Strömungsrohrs und/oder während einer System-Beeinträchtigung oder Störung ist es nicht immer der Fall, dass die Betriebsfrequenz mit Sicherheit bekannt ist. Beispiele von Techniken zum Behandeln dieser Unsicherheit während des Hochfahrens und des Betreibens der Strömungsrohrmessungen werden unter Bezugnahme auf 16 bis 18 detaillierter diskutiert.
  • Ein Faktor, der die Betriebsfrequenz des Strömungsrohrs und demnach die Auswahl eines geeigneten Pufferversatzes beeinträchtigen kann, ist die Verwendung eines Filters 450, welches in 4 gezeigt ist als ein in dem Digitalcontroller 420 implementiertes Filter. Solch ein Filter kann beispielsweise verwendet werden zum Entfernen unerwünschter Frequenzkomponenten, die in der Vibration des Strömungsrohrs vorliegen können und von den Sensoren 205 erfasst werden. Auf diese Weise wird das auf das Strömungsrohr angewendete Antriebssignal effizienter gemacht, d.h., wird eher den Resonanzmodus des Strömungsrohrs erregen.
  • Das Filter 450 kann während seines Betriebs auch eine nicht vorhersehbare Verzögerung des bzw. der gefilterten Signale verursachen. Diese Verzögerung sollte berücksichtigt werden, um eine Phasenübereinstimmung zwischen den Sensorsignalen und Treibersignalen sicherzustellen.
  • Kurz gesagt, 5 und 6 zeigen Techniken für die Phasenübereinstimmung eines Sensorsignals mit einem Treibersignal während eines Positiv-Rückkopplungsbetriebs. In der Praxis, um die Techniken der 5 und 6 zu implementieren, kann es erforderlich sein, zuerst einen tatsächlichen Stromwert einer Betriebsfrequenz des Strömungsrohrs zu bestimmen (um hierdurch den Pufferversatz zu bestimmen). Auch in der Praxis kann das Filter 450 verwendet werden, in welchem Fall zusätzliche oder alternative Techniken verwendet werden können, um einen Effekt des Filters 450 auf die Betriebsfrequenz und/oder eine Zeitabstimmung des bzw. der Sensortreibersignale zu berücksichtigen. Diese zusätzlichen oder alternativen Techniken sind in 6 aus Gründen der Klarheit nicht dargestellt, aber Beispiele der Techniken werden nachstehend detailliert diskutiert und jene Beispiele (erforderlichenfalls mit Modifikationen) sind in gleicher Weise anwendbar im Zusammenhang der 5 und 6.
  • Speziell werden die Verwendungen und Wirkungen des Filters 450 im Zusammenhang mit beispielsweise einem Digital-Synthesebetrieb nachstehend detaillierter diskutiert. Ein Beispiel eines solchen Digital-Synthesebetriebs wird unter Bezugnahme auf 7-9 beschrieben.
  • 7 ist ein Ablaufdiagramm 700 zum Zeigen eines Digital-Synthese-Modus des Betriebs des Systems 400 der 4. In 7 leitet ein Prozessorbus 702 Information zwischen dem Digitalcontroller 420 und anderen Komponenten des Digitalsenders 104 weiter. Im Ablaufdiagramm 700 werden Ausgangsgrößen der Analog/Digital-Umsetzer 415 durch den Digitalcontroller 420 als linke Sensordaten (704) und rechte Sensordaten (706) eingegeben. Die rechten Sensordaten werden multipliziert (708) mit einem Sensor-Ausgleichsterm (710), wie im Ablaufdiagramm 500.
  • Daraufhin werde die linken Sensordaten durch das Filter 450 gefiltert (712) und die rechten Sensordaten werden auch durch das Filter 450 gefiltert (714) und die beiden gefilterten Signale werden addiert (716), um eine gewichtete Summe (718) bereitzustellen. Alternativ, obwohl nicht dargestellt, könnten die linken und rechten (gewichteten) Sensordaten summiert werden und die gewichtete Summe könnte dann gefiltert werden.
  • Die gefilterten Sensordatensignale und die gewichtete Summe werden dann zu dem Ringpuffer 425 geleitet (720). Der Puffer 425 leitet die Sensordaten weiter zur Signalanalyse (722).
  • Es sollte verstanden werden, dass der Puffer 425 nicht erforderlicher Weise in dem Digital-Syntheseprozess der 7 auf dieselbe Weise, wie oben unter Bezugnahme auf den Positiv-Rückkopplungsprozess der 5 beschrieben, verwendet werden muss, d.h., zum Korrigieren der Phasenverzögerung durch Bereitstellen eines ausgewählten Wertes von einer vorangegangenen Periode, der einem Wert einer momentanen Periode entspricht. Eher kann der Puffer 425 beispielsweise zum Halten von Signaldaten dienen, bis sie von einer anderen Systemkomponente benötigt werden (wie z.B. einem Signalprozessor) oder zum Sichern von Signaldaten, in dem Fall, dass das System 400 aus dem Digital-Synthese-Modus herausgehen muss und zurück zum Positiv-Rückkopplungs-Modus (bedingt beispielsweise durch einen Verlust oder eine Verzerrung eines momentanen Signals) .
  • Wenn der Digitalcontroller 420 in der in 3 gezeigten Weise implementiert ist, d.h. unter Verwendung des FPGA 310 und des Prozessors 315, können die oben beschriebenen Merkmale des Ablaufdiagramms 700 von dem FPGA 310 ausgeführt werden. Daraufhin kann der Prozessor 315 die Sensorsignal-Analyse ausführen (722), um hierdurch Syntheseparameter für die Treibersignale zu bestimmen (724). Beispielsweise kann der Prozessor 715 die Sensorsignale analysieren zum Messen einer echten Frequenz der Signale, von welcher er Anfangswerte, Phasenversatz oder andere Parameter berechnen kann, die zum Synthetisieren eines gewünschten Treibersignals benötigt werden. Diese Berechnungen werden nachstehen detaillierter diskutiert.
  • Sobald das gewünschte Treibersignal synthetisiert ist (726), wird ein Treiber-Verstärkungsterm (728) durch das Treibersignal multipliziert (730), um hierdurch eine momentane Treiber-Ausgangsgröße (732) zu erzeugen. Wie im Ablaufdiagramm 500 kann die Treiber-Ausgangsgröße in eine linke Treiber-Ausgangsgröße (734) und eine rechte Treiber-Ausgangsgröße (736) getrennt werden. Abhängig davon, ob der Prozessor einen Coriolis- oder einen Antriebsmodus auswählt (738), ist die rechte Treiber-Ausgangsgröße gleich der linken Treiber-Ausgangsgröße bzw. dem Kehrwert davon. Schließlich wird ein Treiber-Ausgleichsterm (740) auf die rechte Treiber-Ausgangsgröße (742) angewendet, um eine Feinabstimmung des Treiberausgleichs vorzunehmen und in bezug auf gegebenenfalls vorliegende Analog-Schaltungsschwankungen zu kompensieren, hierdurch eine ausgeglichene rechte Treiber-Ausgangsgröße erzeugend (744).
  • 8 ist ein erstes Zeitdiagramm zum Erläutern einer Zeitabstimmung einer Synthese einer als Teil eines Treibersignals zu verwendenden Sinusschwingung. In ähnlicher Weise ist 9 ein zweites Zeitdiagramm zum Zeigen einer Zeitabstimmung einer Synthese einer als Teil eines Treibersignals zu verwendenden Sinusschwingung. Es sollte bemerkt werden, dass 8 und 9 primär dazu gedacht sind, eine beispielhafte Zeitabstimmung eines Sinusschwingungs-Syntheseprozesses zu demonstrieren, der in dem Synthese-Modus der 7 verwendet werden kann und demnach die nachstehende Diskussion der 8 und 9 nur eine Übersicht der tatsächlichen Rechentechniken einschließt, die zum Durchführen der Synthese verwendet werden können. Eine detailliertere Erläuterung möglicher Rechentechniken, die während einer Sinusschwingungssynthese verwendet werden, können, einschließlich möglicher von dem FPGA 310 und dem Prozessor 315 beim Implementieren solcher Techniken gespielter Rollen wird nachstehend unter Bezugnahme auf 10-14 bereitgestellt.
  • In 8 repräsentiert ein erstes Signal 802 ein an einem Eingang des Analog/Digital-Umsetzers 415 erfasstes Sensorsignal. Ein Nachfiltersignal 804 repräsentiert das Sensorsignal 802 mit einer Zeitverzögerung 806, wobei die Zeitverzögerung 806 eine Verzögerung repräsentiert, die dem ersten Signal 802 durch den Analog/Digital-Umsetzer 415 auferlegt wird sowie eine Verzögerung, die dem ersten Signal 802 durch das Filter 450 auferlegt wird.
  • Wie oben unter Bezugnahme auf 7 erwähnt, kann bei der Implementierung der 3 der FPGA 310 das Filtern des bzw. der Sensorsignale durchführen sowie eine Berechnung einer gewichteten Summe (wie oben beschrieben resultierend in dem Signal 804) der gefilterten Sensorsignale. In 8 sollte verstanden werden, dass das Signal 802 eine virtuelle gewichtete Summe repräsentiert, d.h., ein Analogsignal, das aus einer analogen gewichteten Summe der Sensorsignale erstellt würde, wie es der durch das FPGA 310 berechneten und darin vorliegenden berechneten gewichteten Summe 804 gegenüberliegt (mit einer Größe und Frequenz ähnlich der des Signals 802, aber mit einer Phasenverzögerung in bezug auf das Signal 802). Das FPGA 310 kann dann einen Negativ-zu-Positiv-Nulldurchgang des Signals 804 berechnen, der in 8 durch eine erste Linie 808 angezeigt wird und alle Information über das Signal 804 (einschließlich der Negativzu-Positiv-Nulldurchgangs-Information) an den Prozessor 315 senden.
  • Der Prozessor 315 bestimmt eine mittlere Frequenz (freqave) der ursprünglichen (beiden) Sensorsignale von Sensoren 205 sowie einen Cosinus (cos) und Sinus (sin) eines Winkels „δ“ zwischen Abtastwerten, wobei der Winkel zwischen Abtastwerten definiert ist als δ = 2π freqavg/Fs, wobei Fs die Abtastrate ist (siehe 13). Die Frequenzen können beispielsweise durch einen Interpolationsprozess berechnet werden, der unten detaillierter diskutiert wird (siehe 12).
  • Die Berechnung der Frequenz erfordert eine begrenzte Verarbeitungszeit, so dass der Prozessor 315 die Frequenzinformation nach einer Verordnungszeit 814 verfügbar hat. Durch Einspeisen des freqave-Wertes in die dem Filter 450 zugeordnete nicht-lineare Filterfunktion kann eine entsprechende Filter-Verzögerung des Filters 450 bestimmt werden, die gemeinsam mit der (bereits bekannten) Analog/Digital-Umsetzer-Verzögerungszeit, die Verzögerung des Filters zuzüglich des Analog/Digital-Umsetzers bereitstellt, 806,
  • Der Prozessor 315 kann auch einen Phasenversatz θ0 berechnen, welcher die Tatsache widerspiegelt, dass es eine kleine Zeitdifferenz zwischen einem tatsächlichen Nulldurchgang und einem nächsten Abtastwert des Schwingung geben kann (siehe 13). Dieser Versatz θ0 kann verwendet werden zum Erhalten von Anfangswerten für die Sinus- und Cosinus-Parameter (d.h., sin(θ0) und cos(θ0)) für die zu synthetisierende Sinusschwingung. Der Prozessor 310 sendet dann die berechneten Parameter zu dem FPGA 315, welches wiederum das Abwarten einer ersten Wartezeit ausführt 816. Die erste Wartezeit 816 misst vom Ende der Verarbeitungszeit 814 bis zum durch eine Linie 818 markierten nächsten Nulldurchgang.
  • Der Prozessor 315 kann auch eine zweite Wartezeit 820 berechnen, nach welcher das FPGA 310 das Synthetisieren einer Sinusschwingung 822 beginnt, zu einer Zeit, die durch eine Linie 824 markiert ist. Die zweite Wartezeit 820 wird derart ausgewählt, dass die von dem FPGA 310 synthetisierte Sinusschwingung 822 in Phase sein wird mit dem Sensorsignal 802, wenn die Sinusschwingung 822 auf das Strömungsrohr 215 als ein Treibersignal 826 angewendet wird. Damit diese Bedingung auftritt, muss das FPGA die Sinusschwingung 822 derart synthetisieren, dass die Verzögerung 806 des Filters und des Analog/Digital-Umsetzers berücksichtigt wird, hierdurch eine Übereinstimmung der Sinusschwingung 822 mit einer verschobenen oder korrigierten Version des Nachfiltersignals 804 erzielend. Zudem muss die Sinusschwingung 822 auch vorausschauend verschoben werden, um die Verzögerung zu berücksichtigen, die nach der Synthese auftreten wird, z.B. die einem Durchführen des Sinusschwingung 822 durch den Digital/Analog-Umsetzer 430 zugeordnete Verzögerung. Diese Verzögerung wird als eine Digital/Analog-Umsetzer-Verzögerung 828 wiedergegeben zwischen der Linie 824 und einer Linie 830.
  • Demnach kann die zweite Wartezeit 820 berechnet werden, um eine Gesamtzeitdauer zu sein (d.h. vom Nulldurchgang bei der Linie 818 zu einem folgenden Nulldurchgang bei der Linie 832), abzüglich einer durch den Digitalsender 104 auferlegten Gesamtverzögerung, welche im Fall der 8 gleich der Verzögerung 806 von Filter zuzüglich Analog/Digital-Umsetzer und zusätzlich der Verzögerung 828 des Digital/Analog-Umsetzers ist. Durch Starten der Synthese des Sinusschwingung 822 zu dem durch die Linie 824 markierten Zeitpunkt stimmt dann eine Phase des Treibersignals 826 (nach der Digital/Analog-Umsetzer-Verzögerung 828) exakt überein mit einer Phase des Sensorsignals 802, wie durch die Linie 830 und eine Linie 834 gezeigt.
  • In dem Beispiel der 8 wird angenommen, dass die Frequenz/Periode des Sensorsignals 802 derart ist, dass der Prozessor 315 seine Verarbeitungsroutinen in weniger als einer Signalperiode ausführen kann (d.h., die Zeit 814 ist im wesentlichen kürzer als die Gesamtperiodenlänge der Schwingung bzw. Schwingungen). In diesem Fall sollte bemerkt werden, dass das Treibersignal 826 tatsächlich in Phase ist mit der „i+3“-ten Periode des Sensorsignals 802, d.h., zwei volle Perioden bzw. Zyklen (die „i+1“-te und „i+2“-te Perioden), wie oben erwähnt, werden für die Frequenz-Berechnungen (und zugehörige Berechnungen) verwendet und/oder als Wartedauer, welche die verschiedenen Verzögerungen berücksichtigt. Alternativ kann es möglich sein, die erste Wartezeit 816 zu eliminieren und das Zählen der zweiten Wartezeit 820 unmittelbar nach dem Nulldurchgang zum Zeitpunkt 808 zu beginnen. Diese Methode erfordert von dem FPGA 315, dass er annimmt, dass die Synthese-Parameter vor dem Ende der zweiten Wartezeit 820 auftreten werden und es ist demnach eine aggressivere oder zeitempfindlichere Methode, aber, wenn erfolgreich, reduziert sie die Verzögerung von zwei Zyklen bzw. Perioden auf nur eine Periode.
  • Für höhere Frequenzen kann es der Fall sein, dass die Berechnungszeit 814 vergleichbar oder länger ist als die Gesamtperiodenlänge. Darüber hinaus kann eine Verarbeitungszeit des Prozessors 315 gegebenenfalls nicht konstant sein (bedingt durch beispielsweise andere im Prozessor 315 auferlegte Belastungen), in welchem Fall die Zeit 814 im wesentlichen variieren kann (in bezug auf die Gesamt-Periodenlänge).
  • 9 ist ein Beispiel einer solchen Situation. In 9 erfährt ein Sensorsignal 902 eine A/D-Umsetzer + Filter-Verzögerung 904 und wird von dem Filter 450 als ein Signal 906 ausgegeben. Bei einem Nulldurchgang 908 beginnt eine Analyse einer Periode i des Signals 906, aber ist nicht abgeschlossen, bis nach einer Berechnungszeit 910, welche länger ist als eine Periode des Signals 906. Nach einer ersten Wartezeit 912 wird ein Nulldurchgang 914 durch den FPGA 310 erfasst, woraufhin das FPGA 310 die Syntheseparameter erhält (oder Syntheseparameter verwendet, die bereits von dem Prozessor 315 empfangen worden sind) und eine zweite Wartezeit 916 abwartet.
  • In 9 ist die Verzögerung 904 des Analog/Digital-Umsetzers und Filters zuzüglich der (voraussichtlichen) Verzögerung 918 des Digital/Analog-Umsetzers kumulativ länger als eine Periode der Sensorsignale. Demnach kann gegebenenfalls in einer ersten Implementierung die zweite Wartezeit 916 ebenfalls entsprechend länger sein als die Periodenlänge. In dieser Implementierung wird ein Signal 920 in den Digital/Analog-Umsetzer 430 eingegeben nach der zweiten Wartezeit 916, so dass nach der Digital/Analog-Umsetzer-Verzögerung 918 ein Treibersignal 922 erzeugt wird, das in Phase ist mit der „i+5“-ten Periode des Sensorsignals 902.
  • Alternativ kann in einer zweiten Implementierung, wie in 9 gezeigt, die zweite Wartezeit 916 als ein nicht-negativer ganzzahliger Rest der Gesamtverzögerung bestimmt werden (ausgedrückt als eine Anzahl von Abtastungen), geteilt durch die Periodenlänge (auch ausgedrückt als eine Anzahl von Abtastungen). In dieser Implementierung wird das Signal 920 in den Digital/Analog-Umsetzer 430 eingegeben nach der zweite Wartezeit 916, so dass das Treibersignal 922 nach der Digital/Analog-Umsetzer-Verzögerung 918 ausgegeben wird, welches in Phase ist mit der „i+4“-ten Periode des Sensorsignals 902.
  • 10A, 10B und 11 sind jeweils Ablaufdiagramme 1000A, 1000B und 1100, die den Zeitdiagrammen der 8 und 9 zugeordnete Operationen zusammenfassen. Speziell stellen die Ablaufdiagramme 1000A, 1000B und 1100 die Aufteilung der Aufgaben zwischen dem FPGA 310 und dem Prozessor 315 wie oben diskutiert dar. Spezifische Beispiele von Rechentechniken zum Implementieren dieser Aufgaben werden nachstehend unter Bezugnahme auf 12-14 diskutiert sowie unter Rückbezugnahme auf 8 und 9.
  • In dem Ablaufdiagramm 1000A der 10A, das einen ersten Satz von von dem FPGA 310 vorgenommenen Aktionen repräsentiert, beginnt der FPGA 310 durch Eingeben von Sensorsignalen von dem Ausgang des Analog/Digital-Umsetzers 415 (1002). Das Filter 450 wird dann auf die Sensorsignale angewendet (1004). Das FPGA 310 berechnet dann die gewichtete Summe der Sensorsignale (1006), erfasst einen Nulldurchgang der gewichteten Summe (1008) und leitet die gefilterten Signale zu dem Prozessor 315 (1010).
  • In dem Ablaufdiagramm 1100 der 11, das einen Satz von von dem Prozessor 315 vorgenommenen Aktionen repräsentiert, bestimm der Prozessor 315 mindestens zwei Nulldurchgänge von vorangegangenen Schwingungsperioden unter Verwendung von beispielsweise Interpolation (1102) und verwendet diese Information zum exakten Berechnen von Frequenzen der Sensorsignale (sowie der mittleren Frequenz freqave der Sensorsignale) (1104). Der Prozessor 315 berechnet dann den Phasenversatz θ0 und berechnet dann eine Filterverzögerung (1108).
  • Darauffolgend berechnet der Prozessor 315 unter Verwendung der gerade bestimmten Frequenz- und Phasenversatz-Information (d.h., dem (nicht Null)-Phasenwert, der einem ersten Abtastwert jeder neuen von dem Treiberausgang erzeugten Periode (siehe 12), und nicht die Phasendifferenz zwischen zwei Sensorsignalen (welche dem Massenstrom von durch das verwendete Strömungsrohr bewegtem Fluidum zuzuordnen ist)) Synthese-Sinusschwingungs-Parameter (1110). Wie oben erwähnt, können einige der berechneten Sinusschwingungsparameter den Sinus/Cosinus eines Winkels δ zwischen aufgenommenen Digital-Abtastwerten einschließen (1112), Anfangswerte der Sinus/Cosinus-Funktionen (1114) und zweite Wartezeiten, die das FPGA 310 vor dem Beginnen der Synthese abwarten muss (1116).
  • Der Prozessor 315 berechnet dann Amplitudeninformation (1118) einschließlich einer tatsächlichen Amplitude der Sensorsignale und eines gewünschten Verstärkungsfaktors. Ein Verstärkungsvorzeichen kann auch bestimmt werden (beispielsweise kann ein negatives Vorzeichen ausgewählt werden für beispielsweise eine Amplitudenreduzierung während einer Einstellpunktänderung oder in stark dämpfenden Fluida, wie oben erwähnt), gemeinsam mit einem Oszillationsmodus (z.B. Coriolis- oder angetriebener Modus), Sensor-Ausgleichsfaktoren und Treiber-Ausgleichsfaktoren (siehe 7) .
  • Zurück zu 10B empfängt der FPGA 310 in dem Ablaufdiagramm 1000B die verschiedenen berechneten Parameter von dem Prozessor 315 und schreitet fort zum Abwarten der ersten Wartezeit, bis der relevante Nulldurchgang erfasst wird (1012). Zu diesem Zeitpunkt gibt der FPGA 310 die Syntheseparameter (1014) ein und wendet sie an und geht weiter zum Abwarten der zweiten Wartezeit (1016). Sobald die zweite Wartezeit vorüber ist, beginnt das FPGA 310 mit der Synthese der gewünschten Sinusschwingung (1018).
  • Daraufhin wird die Amplitude der synthetisierten Schwingung wenn erforderlich abgeglichen (d.h. ein Antriebsverstärkungsfaktor wird an die Sinusschwingung angelegt) (1020), und die Sinusschwingung wird an die Eingänge des Digital-Analog-Umsetzers 430 weitergeleitet, um daraus als Antriebssignal ausgegeben zu werden (1022).
  • Beispielsoperationen des Prozessors 315, wie oben gerade unter Bezugnahme auf 11 und das Ablaufdiagramm 1100 erläutert, werden nachstehend unter Bezugnahme auf 12-14 diskutiert.
  • Speziell 12 ist eine Darstellung eines Nulldurchgangs eines von dem Filter 450 ausgegebenen Signals (z.B. Signal 804 oder Signal 906 der 8 bzw. 9). 12 zeigt den Bedarf nach dem Bestimmen von einem oder mehreren Null-Durchgängen unter Verwendung von Interpolation (1102 der 11). Wie oben bereits unter Bezugnahme auf 8 und 9 erwähnt, wird ein Signal 1202 durch den Digital-Analog-Umsetzer 415 und das Filter 450 eingegeben und wird einer zugeordneten Verzögerung 1204 unterzogen bevor es als ein Signal 1206 ausgegeben wird.
  • In dem Signal 1206 kann es eine Differenz geben zwischen einem tatsächlichen Nulldurchgang 1208 und einer nächstgelegenen Abtastung 1210, was zu einem Versatz 1212 führt. Um den Nulldurchgang 1208 zu bestimmen, kann ein Interpolationsprozess, wie z.B. ein quadratischer oder ein linearer Interpolationsprozess, verwendet werden. Beispielsweise kann der Prozessor 315 eine volle Periode des gefilterten Sensorsignals bzw. der gefilterten Signale 1206 holen, gemeinsam mit einer Anzahl von Abtastwerten von jedem Ende der Periode und verwendet diese Parameter im Interpolationsprozess zum Bestimmen des Nulldurchgangs 1206.
  • 13 ist eine Darstellung einer Sinusschwingung 1302, die die Syntheseparameter darstellt. In 13 ist eine volle Periode der Sinusschwingung 1302 dargestellt, gemeinsam mit Abtastpunkten 1304 der Sinusschwingung 1302, Wie in 13 gezeigt, wird dann ein Phasenversatzparameter θ0 als eine Differenz zwischen einem tatsächlichen Start (Nulldurchgang) des Signals 1302 und einem ersten Abtastwert 1304a definiert. Indessen ist der Winkel δ definiert als die Phase zwischen beispielsweise einem zweiten Abtastwert 1304b und einem dritten Abtastwert 1304c, so dass (wie oben erwähnt) δ=2πfreqavg/Fs gilt.
  • Unter Verwendung dieser Parameter kann der FPGA 310 eine gewünschte Sinusschwingung (1018 der 10B) unter Verwendung der folgenden Kursivformel (Gleichungen (1) und (2)) von der Trigonometrie der Summe der beiden Winkel rekursiv erzeugen (synthetisieren): sin ( θ + δ ) = sin ( θ ) cos ( δ ) + cos ( 0 ) sin ( δ )
    Figure DE000010392459B4_0001
    cos ( θ + δ ) = cos ( θ ) cos ( δ ) sin θ ( θ ) sin ( δ )
    Figure DE000010392459B4_0002
  • Demnach vermittelt in Gleichungen (1) und (2) die Verwendung der Parameter der 13, θ=θ0+nδ für n=0,1,2,... der Parameter δ die Frequenz der synthetisierten Schwingung, welche gleich der mittleren Sensorfrequenz freqavg gemacht wird. In der Praxis wird der Anfangswert θ0 üblicherweise nahe bei Null sein, da θ und δ bei Null-Durchgängen aktualisiert werden.
  • Die Variablen sin(δ) und cos(δ) sind Parameter, die durch den Prozessor 315 in jedem Messzyklus berechnet werden können und weitergeleitet werden zu dem FPGA 310 in einem 24-Bit-Format. Typische Werte von δ sind sehr klein, so dass sin(δ)≈0 und cos(δ)≈1 gilt. In einer Implementierung wird cos(δ) an den FPGA 310 als Differenz geschickt mit 1,0 (d.h. [1-cos(δ)]). Obwohl die Parameter sin(δ) und [1-cos(δ)] skaliert sein können, derart, dass irgendwelche der als null bekannten signifikantesten Bits verworfen werden, so dass nur die ersten 24 Werte, die imstande sind, von Null verschiedene Werte anzunehmen, zu dem FPGA 310 gesendet werden.
  • In diesem Fall können Gleichungen (1) und (2) neu geschrieben werden als Gleichungen (3) und (4) unter Verwendung des Parameters [1-cos(δ)]: sin ( θ j + 1 ) = sin ( θ j ) + Δ sin
    Figure DE000010392459B4_0003
    cos ( θ j + 1 ) = cos ( θ j ) + Δ cos
    Figure DE000010392459B4_0004
  • In Gleichungen (3) und (4) können θj=jδ+θ0 und die Ausdrücke Asin und Δcos gemäß den Gleichungen (5) und (6) bestimmt werden: Δ sin = sin ( θ j + 1 ) sin ( θ j ) Δ sin = sin ( θ j ) + sin ( θ j ) cos ( δ ) + cos ( θ j ) sin ( δ ) Δ sin = sin ( θ j ) [ 1 cos ( δ ) ] + cos ( θ j ) sin ( δ )
    Figure DE000010392459B4_0005
    Δ cos = cos ( θ j+1 ) cos ( θ j ) Δ cos = cos ( θ j ) + cos ( θ j ) cos ( δ ) sin ( θ j ) sin ( δ ) Δ cos = cos ( θ j ) [ 1 cos ( θ j ) ] sin ( θ j ) sin ( δ )
    Figure DE000010392459B4_0006
  • Der Parameter θ0 kann von dem Prozessor 315 zu dem FPGA 310 gesendet werden durch Vorsehen von Anfangswerten sin(θ0) und cos(θ0) mit sin(θ0) als erstem Ausgangswert der synthetisierten periodischen Schwingung. Diese kann weitergeleitet werden in beispielsweise einem 32-Bit-Format und verwendet werden zum Bestimmen des Phasenversatzes der Treibersignale.
  • Der Phasenversatz θ0 sollte idealerweise übereinstimmen mit den Sensorsignalen, um eine Oszillation so nahe wie möglich bei der Resonanzfrequenz zu erhalten. Selbst für eine feste Antriebsfrequenz kann jedoch der Wert θ0 von Periode zu Periode variieren weil die CODEC-Abtastrate üblicherweise nicht ein exaktes Vielfaches der Treiberfrequenz ist. Speziell der Wert von θ0 variiert zwischen 0 und 5 in Übereinstimmung mit einer schlagenden Wirkung zwischen der Antriebs- und der CODEC-Frequenzen. Beispielsweise gilt dann für eine CODEC-Frequenz von 40 kHz und eine Antriebsfrequenz von 81,2 Hz δ=0,73°C. Einen Wert von θ0 von null in Periode 1 annehmend zeigt Tabelle 1 die Werte von θ0 in nachfolgenden Perioden. Tabelle 1
    Periodenindex i Abtastindex k Zeit t = kTs (s) Phasenversatz θ0 (Grad)
    1 1 0,0000 0,0000
    2 494 0,0123 0,2844
    3 987 0,0246 0,5688
    4 1479 0,0369 0,1224
    5 1972 0,0493 0,4068
    6 2465 0,0616 0,6912
    7 2957 0,0739 0,2448
  • Die Differenz im Phasenversatz zwischen zwei aufeinanderfolgenden Perioden kann signifikanter sein in höherfrequenten Strömungsrohren. Beispielsweise ist unter Verwendung derselben CODEC-Frequenz mit einer 650-Hz-Antriebsfrequenz δ 5,85° hoch, wie in Tabelle 2 gezeigt: Tabelle 2
    Periodenindex i Abtastindex k Zeit t = kTs (s) Phasenversatz θ0 (Grad)
    1 1 0,0000 0,0000
    2 63 0,0015 2,7002
    3 125 0,0031 5,3994
    4 186 0,0046 2,2506
    5 248 0,0062 4,9491
    6 309 0,0077 1,8008
    7 317 0,0092 4,4990
  • Demnach ist es für einen genauen Wert von θ0 wichtig, zu wissen, für welche Ausgangsperiode der Wert erzeugt wird. Wie nachstehend diskutiert, kann dies zu Schwierigkeiten bei Hochfrequenzströmungsrohren führen.
  • Aus Tabellen 1 und 2 und der vorangehenden Diskussion sollte verstanden werden, dass ein potentieller Nachteil in Bezug auf die Verwendung des Positiv-Rückkopplungs-Modus der ist, dass in diesem Modus nur Phasenwerte generiert werden können, die tatsächlich abgetastet und im Puffer 425 gespeichert sind. Als ein Ergebnis kann ein Phasenversatz zwischen einem oder mehreren Sensorsignalen und einem oder mehreren Treibersignalen so hoch sein wie eine Abtastung (d.h. δ). Wie gerade dargelegt, ist dieser Phasenversatz möglicherweise problematisch, insbesondere in einer Hochfrequenz-Strömungsrohrumgebung. Im Gegensatz hierzu ist das Digitalsyntheseverfahren imstande, wenn erforderlich, virtuell irgendeinen gewünschten Phasenwert auszugeben. Demnach kann in diesem Betriebsmodus im wesentlichen eine exakte Phasenübereinstimmung virtuell sichergestellt werden.
  • Ein anderer während des Ausführens des Ablaufdiagramms 1100 berechneter Parameter ist der Filterverzögerungsparameter (1108). Wie oben erwähnt, erlegt das Filter 450 einem gefilterten Signal eine Verzögerung auf, die sich auf eine nichtlineare Funktion einer Frequenz des Signals an einem Eingang des Filters 450 bezieht. Daher, wie ebenfalls oben diskutiert, bestimmt der Prozessor 315 üblicherweise eine tatsächliche Frequenz des Eingangssignals und speist diesen Wert in die nichtlineare Funktion, um hierdurch die Filterverzögerung (nachstehend ψ(f)) zu berechnen.
  • Diese Verzögerung ψ(f), die üblicherweise in Winkeleinheiten wiedergegeben wird (entweder Grad oder Radiant), kann analytisch erhalten werden aus den Filterkoeffizienten. Unter Verwendung der Abtastfrequenz Fs wird ψ(f) umgesetzt in eine nicht-ganzzahlige Zahl von Abtastwerten. Diese Verzögerung in der Abtastung kann dann modelliert werden durch beispielsweise ein Polynom sechster Ordnung (nachstehend detaillierter diskutiert), um seine Berechnung in dem Prozessor zu beschleunigen.
  • 14A, 14B und 14C sind Graphiken zum Zeigen von Filterkennlinien. 14A-14C sind eher in Abtastwerten denn in Grad dargestellt. 14A zeigt eine Phasenverzögerung gegenüber der Frequenz für einen Bereich von Frequenzen, der verwendet werden könnte mit einem Niederfrequenzströmungsrohr. 14B zeigt ein Polynom, das geeignet ist für den Graphen der 14A, und 14C zeigt Residuen des geeigneten Polynoms (wobei die Residuen nicht über den Wert von ±0,01 Abtastwerte hinausgehen).
  • In einer Implementierung kann das oben diskutierte Filter ein elliptisches Fließ- oder Festpunktfilter sechster Ordnung sein (ein „infinite impulse response“- oder „IIR“-Filter), das in dem FPGA 310 implementiert ist. Ein solches Filter kann betreibbar sein zum Unterdrücken unerwünschter (hoher) Frequenzkomponenten wie z.B. hoher Resonanzmoden aus dem bzw. den Sensorsignalen (und während eines Positiv-Rückkopplungs-Modus, hierdurch sicherstellend, dass solche unerwünschten Frequenzen nicht in das oder die Antriebssignale zurückgekoppelt werden).
  • Beispielsweise kann ein solches Filter implementiert werden mit einer Grenzfrequenz, die geringfügig höher ist als die Resonanzfrequenz des Strömungsrohrs 215, und verwendet werden zum Filtern einer Ausgangsgröße des oder der Treiber 210. Zusätzlich kann eines oder können mehrere IIR-Filter oder auch „Finite Response Filter“ bzw. FIR-Filter auf dem Prozessor implementiert werden, um die Mess-Performance weiter zu verbessern.
  • Ein zusätzlicher Vorteil der Verwendung eines elliptischen Filters als das Filter 450 des FPGA 310 ist, dass eine durch ein solches Filter hindurchtretende Sägezahnschwingungsform nahezu sinusförmig wird, was nützlich sein kann zum Forcieren des Hochfahrens des Strömungsrohrs 215 (Hochfahrbetrieb, wie nachstehend genauer diskutiert).
  • Unter Berücksichtigung der Verwendung eines Filters, wie hier beschrieben, sollte verstanden werden, dass ein solches Filter im wesentlichen ein Tiefpassfilter oder Bandpassfilter mit sehr strengen Spezifikationen ist. Das heißt, um seine Funktionalität zu erfüllen, muss das Filter eine sehr scharfe Filtertrennflanke bei einer sehr niedrigen Frequenz haben. Beispielsweise kann das gebogene Strömungsrohr 202 eine maximale Resonanzfrequenz von etwa 100 Hz haben, wobei zu unterdrückende wesentlich höhere Harmonische und unerwünschte Resonanzmoden des Strömungsrohrs 215 im Bereich von 150-1500 Hz liegen mit einer typischen Abtastrate von 40 kHz.
  • Wie oben erwähnt, prägen analoge Durchflussmesser üblicherweise marginale, wenn überhaupt irgendwelche, Verzögerung des Treibersignals ein in Bezug auf das Sensorsignal und können daher gegebenenfalls keine Phasenkompensation erfordern. Jedoch Filter wie jene hier beschriebene können nicht effektiv zu solchen Analogströmungsmessern hinzugefügt werden, da die Phasenverzögerung, die von den Filtern eingefügt wird, nicht leicht kompensiert werden kann. Darüber hinaus würde die Verwendung solcher Filter unpraktisch werden in analogen Entwürfen aus dem einfachen Grund, dass es schwierig, wenn nicht unmöglich würde für die Filter, die erforderliche scharfe Grenzfrequenz in dem Zusammenhang bereitzustellen (beispielsweise kann ein elliptisches Filter nicht in analogen Entwürfen implementiert werden).
  • Demgegenüber sind die hier offenbarten Implementierungen imstande, diese und andere Phasenverzögerungen zu kompensieren, so dass ein elliptisches Filter wirksam und effizient implementiert werden kann durch einfaches Einschließen seiner Funktionalität in den FPGA 310, wie oben beschrieben.
  • Eine Übertragungsfunktion für ein elliptisches Filter, das als das Filter 450 in dem FPGA 310 implementiert werden kann, wo das Filter 450 in Abschnitten zweiter Ordnung implementiert ist, wird durch die Gleichung (7) für den i-ten Filterabschnitt ausgedrückt: H i = Y i ( z ) X i ( z ) = j = 0 2 b i j z j j = 0 2 a i j z j
    Figure DE000010392459B4_0007
  • Eine Differenzgleichung für ein solches Filter ist in Gleichung (8) ausgedrückt: a i o y i ( k ) + a i 1 y i ( k 1 ) + a i 2 y i ( k 2 ) = b i o ( k ) + b i 1 x i ( k 1 ) + b i 2 x i ( k 2 )
    Figure DE000010392459B4_0008
    wobei Gleichung (8) aufgelöst werden kann nach yi, wie in Gleichung (9) gezeigt: y i ( k ) = [ b i o x i ( k ) + b i 1 x i ( k 1 ) + b i 2 x i ( k 2 ) a i o y i ( k ) + a i 1 y i ( k 1 ) + a i 2 y i ( k 2 ) ] a i 0
    Figure DE000010392459B4_0009
  • Demnach kann beispielsweise ein elliptisches Filter sechster Ordnung unter Verwendung dreier aufeinanderfolgender Abschnitte zweiter Ordnung implementiert werden. In diesem Fall können für einen speziellen Strömungsrohrtyp (z.B. gebogen oder gerade) und eine spezielle Abtastfrequenz die Koeffizienten a0, a1, a2, b0, b1 und b2 (für jeden der drei Abschnitte) bestimmt werden durch Betrachten eines Vollbereichs von Betriebsfrequenzen für das bzw. die Antriebssignale (d.h. von einer maximalen Frequenz entsprechend einem leeren Strömungsrohr bis zu einer Frequenz entsprechend einem Strömungsrohr, wenn es voll von Fluidum ist, mit der höchsten spezifizierten Dichte für das Strömungsrohr), in Verbindung mit gewünschten Grenzfrequenzen für die spezielle Anwendung. Jede Filterstufe kann zusätzliche Verzögerungs-/Phasenverschiebung einfügen, die wiederum in Bezug auf die Verwendung von beispielsweise einer oder mehrerer oben beschriebener Techniken kompensiert werden kann. Wenn die obigen und/oder unter Bezug genommenen Filtertechniken verwendet werden, kann die Amplitude der Hochfrequenzkomponenten in einem Signal um einen Faktor von beispielsweise 1000 oder mehr reduziert werden.
  • Allgemeiner sollte in Bezug auf Filterverarbeitung verstanden werden, dass es einige Arten von Filtern gibt, die implementiert werden können an verschiedenen Stufen der oben beschriebenen Implementierungen. Beispiele solcher Filter schließen ein: analoges Filtern von Sensordaten vor ihrem Lesen durch das CODEC 305, Fest-Filtern von gemessenen Daten innerhalb des FPGA 310, Gleit-Filtern von gemessenen Daten innerhalb des Prozessors 315, Fest-Filtern des synthetisierten Treibersignals innerhalb des FPGA 310 und analoges Filtern der Treiberschwingungsform an ihrem Ausgang.
  • Von diesen Optionen werden die letzteren drei hier detaillierter betrachtet. Zuerst erfordert Fließ-Filtern von Messungen innerhalb des Prozessors 315, dass der Prozessor Rohdaten empfängt und irgendeine Verarbeitung ausführt, die am geeignetsten ist (welche sich mit den Umständen ändern kann). Irgendein Vorfiltern der Rohdaten wird festgelegt und kann nicht leicht modifiziert werden. Unerwünschte Harmonische können während der Schwingungsformsynthese unter Verwendung dieser Technik unterdrückt werden.
  • Festpunkt-Filtern des synthetisierten Treibersignals innerhalb des FPGA 310 kann beispielsweise während positiver Rückkopplung verwendet werden, um unerwünschte Harmonische in dem Sensor davon abzuhalten, durch die Treiber geleitet zu werden. Da der Prozessor 315 nicht direkt eine Wellenformsynthese erfordert, wird es diese spezielle Filterfunktion üblicherweise nicht ausführen.
  • Schließlich kann analoges Filtern des Treibersignal-Post-CODEC verwendet werden zum Glätten hohen Frequenzrauschens, Als letzter Punkt in Bezug auf das Ablaufdiagramm 1100 werden Angelegenheiten in Bezug auf die Berechnung der zweiten Wartezeit (1116) nachstehend detaillierter diskutiert werden.
  • Wie bereits erwähnt, erfordert es für den Prozessor 315 einen endlichen Zeitumfang, die gefilterte Sensorsignalschwingung zu analysieren (z.B. die Zeit 814 in 8 und die Zeit 910 in 9). Als ein Ergebnis ist das Sensorsignal, zu der Zeit, zu der die Berechnung der Sinusschwingungs-Syntheseparameter erledigt ist, um einige Abtastpunkte weitergegangen und, wie in 9 gezeigt, kann möglicherweise um mehr als eine gesamte Periode fortgeschritten sein (abhängig von beispielsweise der Strömungsrohrfrequenz und der Rechenlast des Prozessors, wie einer externen Kommunikationsanfrage) .
  • Auch hat der CODEC-Digital/Analog-Umsetzer 430 eine Verzögerung von beispielsweise 30 Abtastungen zwischen dem von dem FPGA 310 zu dem Eingang des CODEC-Digital/Analog-Umsetzer 430 gesendeten Wert und dem am Ausgang des Digital/Analog-Umsetzers 430 erscheinenden Signal, was in die Überlegung einzubeziehen ist. Demnach, wie in 8 und 9 gezeigt, sollten eine Anzahl von Takten zwischen dem Start der analysierten Sensorschwingung und dem Start der synthetisierten Schwingung an dem Ausgang des CODEC-Digital/Analog-Umsetzers 430 berechnet werden, um einen Anfangswert der synthetisierten Schwingung abzustimmen.
  • Eine Art, zu sehen, wie weit hinter der „Echtzeit“ der Prozessor 315 zurückgefallen ist, ist, den Rückstand des Ringpuffers 425 zu betrachten. Dieser Rückstand repräsentiert einen Zählwert in Bezug darauf, wieviele Analog/Digital-Umsetzabtastwerte von dem FPGA 310 empfangen worden sind und darauf warten, zum Prozessor 315 gesendet zu werden. Durch Betrachten des Datenrückstands des Ringpuffers 425 und Nehmen der Durchschnittsfrequenz der analysierten Periode als Schätzfrequenz der nächsten Schwingung bzw. Schwingungen ist es möglich, herauszufinden, auf welche Perioden in der Berechnung des Starts der Periode abgezielt werden sollte, wie in dem Beispielcodeabschnitt nachstehend gezeigt, Code-Abschnitt 1:
                       Code-Abschnitt 1
     period=1,0/avg_freq;
     samples_waiting_in_fpga=get_fpga_bufsize();
     num_cycles =(int) (floor(samples_waiting_in_fpga/period)) + 2;
     samples_per_cycle = sample_freq/avg_freq;
     predict_start_cycle = start_cycle_offset + num_cycles *
     samples_per_cycle;
     predict_start_cycle_int=floor(predict_start_cycle);
     predict_start_cycle_offset = predict_start_cycle -
     predict_start_cycle_int;
  • 8 und 9 zeigen die Zeitabstimmung bzw. das Timing der Abfolge von Schritten des Code-Abschnitts 1, beginnend mit dem Takt i des Sensorsignals bzw. der Signale zum Generieren einer Sinusschwingung an einem Ausgang des Digital/Analog-Umsetzers 430 unter Verwendung von von dem Sensortakt i berechneten Parametern.
  • In 8 ist die Schwingungsfrequenz langsam verglichen mit der Zeit, die der Prozessor 315 benötigt zum Analysieren einer Sensorschwingung, so dass es weniger als den Wert einer Periode von Abtastwerten im Puffer 425 zur Zeit wartend gibt, wenn der Prozessor 315 die Analyse der vorangegangenen Schwingung beendet (d.h. ihre Frequenz und zugehörige Filterverzögerung bestimmt). In einem solchen Fall würde die Größe „num_cycles“ üblicherweise Null+2 sein. Dies ist konsistent mit der obigen Erläuterung der 8, in welcher das FPGA 310 eine Zeit wartet gleich der Dauer der Sensorschwingung i+2 (angenommen, dass diese Dauer sich seit der Periode i nicht geändert hat) minus der Gesamtverzögerung im Pfad, d.h. Digital/Analog-Umsetzer + Filterverzögerung 806 und die Digital/Analog-Umsetzer-Verzögerung 828, um die Synthese einer Schwingung zu starten, die versuchen wird, in Übereinstimmung zu kommen mit der Sensorperiode i+3.
  • Allgemeiner kann eine gesamte „Warte“-Zählung (d.h. die Zählung der zweiten Wartezeit 820 der 8 oder 916 der 9) von dem Prozessor 315 zu dem FPGA 310 als ein weiterer Syntheseparameter (1116) gesendet werden. Diese Wartezählung trägt die Information der Filterverzögerung bei der Sensorsignalfrequenz und kann unter Verwendung von beispielsweise dem Code-Abschnitt 2 bestimmt werden:
  •                        Code-Abschnitt 2
         filter-delay = get_filter_delay_in_samples (avg_freq);
         wait-count = samples_per_cycle - codec delay + filter delay;
         while (wait_count <0){
                wait_count += samples_per_cycle;
         }
         while (wait_count > samples_per_cycle) {
                wait_count -= samples_per_cycle;
         }
  • Wenn die Strömungsrohrfrequenz hoch ist in Bezug auf eine Rechenzeit des Prozessors 315, dann könnte mehr als eine Periode akkumuliert werden bevor der Prozessor die Analyse einer Schwingung beendet. In diesem Fall ist die Gesamtverzögerung größer als die Periodenlänge, so dass eine gesamte Periode hinzugefügt werden kann zu dem Wartezählwert des Code-Abschnitts 2, wie in 9 gezeigt.
  • Beim Auswählen der Phase des (synthetisierten) Treibersignals in Bezug auf das bzw. die Sensorsignale gibt es einige Optionen in der Niederfrequenzströmungsrohrumgebung. Beispielsweise kann die Phase eines Treibersignals d1 oder d2 übereinstimmen mit der Phase eines der folgenden: der gewichteten Summe des gefilterten Sensorsignals (wfs), dem gefilterten entsprechenden Sensorsignal oder einem der gefilterten Sensorsignale.
  • In der ersten Option der übereinstimmenden gewichteten Summe gefilterter Sensorsignale sind beide Treiberausgangsgrößen gleich und stimmen in der Phase des gewichteten Filtersummensignals überein, welches unter Normalbetrieb zwischen den beiden Sensorsignalen liegt. Die Suche nach dem Start des Periodenversatzes und der Nulldurchgangerfassung (oben erwähnt) werden auf das gewichtete Filtersummensignal angewendet statt des gefilterten individuellen Sensorsignals. Eine andere Weise, einen Start des Periodenversatzes für die gewichtete Filtersumme zu erhalten, ist, den Mittelwert des Starts des Periodenversatzes für das individuelle gefilterte Sensorsignal zu berechnen. Bei dieser Option ist die Gesamtwartezählung (d.h. die zweite Wartezeit 820 der 8) für beide Treiber dieselbe.
  • In der zweiten Option wird ein erstes Treibersignal abgebildet auf ein erstes Sensorsignal, während das zweite Treibersignal auf das zweite Sensorsignal abgebildet wird. Diese Option hat dieselben δ-Parameter, aber unterschiedliches θ0 für jeden der beiden Treiber. Der Start des Zykluses wird für jede Sensorschwingung berechnet und verwendet zum Berechnen des individuellen Wertes des Sinus und Kosinus jedes Antriebssignals. Der Gesamtwartezähler kann für jeden Sensor ebenfalls unterschiedlich sein. Wenn das Synchronisationstreibersignal mit dem gewichteten gefilterten Summensignal gemacht wird, zeigt die Phasendifferenz zwischen den beiden Sensorsignalen den erwarteten Ort des Nulldurchgangs für jedes Sensorsignal an. Solch eine Phasendifferenz kann auf einer Analyse der Periode i basieren, wobei angenommen wird, dass es keine signifikante Änderung in der Phase bzw. in den Phasen durch die Zeit gibt, die das Antriebssignal benötigt, den DAC 430 auszugeben.
  • In der dritten Option werden beide Treibersignale auf nur eines der beiden Sensorsignale abgebildet. In dieser Option sind beide Treibersignale gleich und bilden die Phase eines Sensorsignals ab (d.h. des abgebildeten Sensorsignals statt des wfs). Jedoch wird ein Start des Periodenversatzes nur für das relevante (d.h. übereinstimmende) Sensorsignal vorhergesagt, und dieselbe Wartezählung wird für beide Treibersignale verwendet.
  • Der Code-Abschnitt 3 zeigt ein Beispiel der Berechnung der Wartezählparameter für jede Option.
  •                        Code-Abschnitt 3
         phase diff-in-samples = phase_diff * samples_per_cycle / 360,0;
         switch(drive_phase_mode) (
              case 0: /* driver outputs in phase with wfs */
                    // send the same value to driver output 2
                    wait_count1 = wait_count2 = wait_count;
                    break;
              case 1: /* driver outputs in phase with sl */
                    // send the same value to driver output 2
              wait_count 1 = wait_count - (phase_diff_in_samples / 2.0);
              wait_count 2 = wait_count 1;
              break;
              case 2: /* driver outputs in phase with each sensor */
              default:
              wait_count 2 = wait_count + (phase_diff_in_samples / 2.0);
              wait_count 1 = wait_count - (phase_diff_in_samples / 2.0);
              break;
         }
  • Der Parameter θ0 wird von einem Start des Periodenversatzes berechnet, wie im Code-Abschnitt 4 gezeigt:
  •                        Code-Abschnitt 4
         /* phase offset */
         predict_start_cycle1 = start_cycle_offset1 +
         num_cycles*samples_per_cycle;
         predict_start_cycle_int1 = floor(predict_start_cycle1);
         pred_sco1 = predict_start_cycle1 - predict_start_cycle_int1;
         predict_start_cycle2 = start_cycle_offset2 +
         num_cycles*samples_per_cycle;
         predict_start_cycle_int2 = floor(predict_start_cycle2);
         pred_sco2 = predict_start_cycle2 - predict_start_cycle_int2;
         switch (drive_phase_mode) {
              case 0: /* driver outputs in phase with wsum */
                   predic_soc = (predic_soc1 + predic_soc2) / 2,0;
                   theta_0 = (1 - predic_soc) * delta;
                   break;
              case 1: /* driver outputs in phase with svl */
              case 2: /* driver outputs in phase with each sensor */
              default:
                   theta_0 = (1 - predic_soc1) * delta;
                   break;
         }
  • Wie bereits erwähnt, können die obigen Optionen zum Auswählen einer Phase des Treibersignals bzw. der Signale in Bezug auf die Sensorsignale nur in Niederfrequenz-Strömungsrohrumgebung anwendbar sein, wie sie beispielsweise mit dem gebogenen Strömungsrohr 102 verwendet werden könnte.
  • In einer Hochfrequenz-Strömungsrohrumgebung, wie sie in Verbindung mit dem geraden Strömungsrohr 106 gesehen werden kann, kann das Strömungsrohr bei Frequenzen im Bereich von näherungsweise 200 bis 1000 Hz mitschwingen. Während eine Sensorperiode in einem Niederfrequenzströmungsrohr etwa 500 Abtastwerte lang sein kann, erfordert es weniger als 100 Werte zum Abtasten einer Periode in einem Hochfrequenzströmungsrohr (unter Verwendung derselben Abtastfrequenz von beispielsweise 40 kHz). Daher können bei einer Filterverzögerung von beispielsweise 32 Abtastungen und einer CODEC-Verzögerung von beispielsweise 61 Abtastungen zu der Zeit, zu der das FPGA 310 einen Nulldurchgang bei dem wfs-Signal erfasst und die Syntheseparameter von dem Prozessor erhält, bereits eine oder mehrere Perioden aufgetreten sein (wie oben erwähnt und in 9 gezeigt). Darüber hinaus kann es, wie oben in Bezug auf Tabelle 2 diskutiert, wichtig sein (jedoch problematisch), zu wissen, welche Ausgangsperiode zu einem speziellen korrekten Wert des Parameters θ0 korrespondiert.
  • Ferner kann, wie oben erwähnt, eine Anhebung der Rechenbelastung des Prozessors 315, z.B. eine externe Kommunikationsanfrage, eine längere Verzögerung in der Frequenz-/Filterverzögerungsberechnung verursachen. Solch eine Verzögerung kann zu Ungenauigkeiten beim Bestimmen, welche Periode tatsächlich im Strömungsrohr in Echtzeit erzeugt worden ist, führen. Auch setzt das FPGA 310 das Erzeugen von Perioden des Treibersignals fort während der Prozessor 315 beschäftigt ist, selbst wenn keine neuen Parameter zu dem FPGA 310 gesendet worden sind.
  • Eine Art, diesen Punkt des Aufrechterhaltens der Genauigkeit beim Nachverfolgen von Perioden des Antriebssignals zu beachten ist, einen Periodenzähler am Ausgang des Digitalfilters 450 im FPGA 310 zu halten. Durch Zulassen des Zugriffs auf diesen Periodenzählwert berichtet das FPGA 310 dem Prozessor 315, wie viele Takte vergangen sind vom Moment, in dem der Prozessor 315 eine Periode i für seine Analyse geholt hat, bis zu dem Moment, in dem das FPGA 310 die tatsächlichen Syntheseparameter berechnet. Zum Verhindern weiterer Nachverfolgungs-Ungenauigkeiten kann der Prozessor 315 im FPGA 310 zwei oder mehr Parametersätze bereitstellen, entsprechend zwei oder mehr Perioden im voraus.
  • Solch ein Periodenzähler als Nachverfolgungsmechanismus kann für beide Arten von Strömungsrohren 102 und 104 aufrechterhalten werden. Code-Abschnitt 5 (der gerade nach dem Berechnen von freqave angewendet werden kann) ist eine modifizierte Version des Code-Abschnitts 4, der die Periodenzähl-/Nachverfolgungsfunktionalität einschließt.
  •                        Code-Abschnitt 5
         input_zero_crossing_counter = get_fpga_zero_crossings_count();
         period = 1,0 / avg_freq;
         samples waiting in-fpga = get_fpga_bufsize() ;
         num_cycles_in buffer = (int) (floor(samples_waiting_in_fpga /
         period));
         /* zero-crossing index of wave under analysis in processor */
         cycle-index = input_zero_crossing_counter - num_cycles_in_buffer;
         num_cycles = get_fpga_zero_crossings_count() - cycle_index;
         cycle-index += num_cycles;
    wobei die letzten beiden Zeilen des Code-Abschnitts 5 unmittelbar vor einer Berechnung der Syntheseparameter angewendet werden können.
  • Zusätzlich kann in einem Hochfrequenzströmungsrohr der Prozessor 315 die Größe „cycle-index“ an den FPGA 310 senden gemeinsam mit den Syntheseparametern für die Periode und die folgenden beiden Perioden. Der FPGA 310 kann demnach diesen Periodenindex mit seinem momentanen Periodenindex vergleichen und den Satz von Syntheseparametern nehmen, der der nächsten Periode entspricht. Beispielsweise, wenn der Prozessor 315 gerade die Berechnung für „Periode 20“ („cycle 20“) beendet hat und Syntheseparameter für die Perioden 25, 26 und 27 („cycles 25, 26, 27“) sendet. Eine Prozessorverzögerung berücksichtigend, kann das FPGA bereit sein, um mit der Synthese von „Periode 26“ („cycle 26“) beim nächsten Nulldurchgang zu beginnen, und würde so die Syntheseparameter entsprechend dieser Periode verwenden (empfangen vom Prozessor 315). Wenn mehr als 3 Perioden verstrichen sind, kann das FPGA 310 den der Periode mit dem Index (cycle_index) entsprechenden Satz nehmen, wie er irgendeinen anderen der beiden genommen haben könnte. In einer anderen Implementierung kann ein Satz für eine Phasenverschiebung entsprechend einer halben Abtastung zu dem FPGA 310 gesendet werden, um den Fehler in diesem Fall zu reduzieren.
  • Code-Abschnitt 6 zeigt ein Beispiel zum Berechnen der Syntheseparameter für ein Hochfrequenzrohr. Beachte, dass, wie bereits erwähnt, bedingt durch seine hohe Resonanzfrequenz nur eine Option verfügbar gemacht wird für das Übereinstimmen der Sensorphase, d.h. das Übereinstimmen der Phase der gewichteten Summe gefilterter Sensorsignale.
  •                          Code-Abschnitt 6
         case HI_FREQ_FLOWTUBE:
         /* phase offset */
         predict_start_cycle1 = start_cycle_offset1;
         predict_start_cycle2 = start_cycle_offset2;
              for (i=0; i<NUM_SOC_OFFSET; i++) {
                  predic_start_cycle1 += num_cycles * samples_per_cycle1;
              predict_start_cycle_int1 = floor( predict_start_cycle1);
              pred_sco1 = predict_start_cycle1 - predict_start_cycle_int1;
                  predic_start_cycle2 += num_cycles * samples_per_cycle2;
              predict_start_cycle_int2 = floor( predict_start_cycle2);
              pred_sco2 = predict_start_cycle2 - predict_start_cycle_int2;
                  predic_soc = ( predic_socl + predic_soc2)/ 2.0;
                  theta_0[i] = (1 - predic_soc) * delta;
                  num_cycles++;
              }
    
             break;
         }
  • Die obige Diskussion hat Techniken für das Kompensieren von Digitalverzögerung in einem Digitalströmungsmesser bereitgestellt, wobei diese Techniken Korrektur-/Abgleichvorgänge an einem (synthetisierten) Treibersignal vornehmen basierend auf einem entsprechenden mathematischen Modell der Eigenschaften des Strömungsmessers. Die Beispiele dieser oben beschriebenen Techniken schließen keine Verifizierung des Ergebnisses der Verzögerungskompensation ein; mit anderen Worten, die Techniken können als „Offenschleifen“-Techniken betrachtet werden.
  • Eine „Geschlossenschleifen“-Methode ist jedoch zusätzlich und/oder alternativ möglich. Solch eine Methode kann beispielsweise das zusätzlich Vornehmen von Ablesungen des Treibersignals (z.B. Strom und/oder Spannung) einschließen und dann das direkte Berechnen irgendwelcher Phasendifferenz zwischen dem Treibersignal und den Sensorsignal. Demnach können Abgleichvorgänge an einem Phasenversatz der Treibersignalausgangsgröße vorgenommen werden zum Sicherstellen, dass sie mit der Phase des Sensorsignaleingangs übereinstimmt.
  • 15 ist ein Blockdiagramm eines Geschlossenschleifen-Systems zum Kompensieren von digitaler Verzögerung in einem Strömungsmesser. In 15 geben ein erster Multiplexer 1502 und ein zweiter Multiplexer 1504 jeweils ein oder mehrere Sensorsignale und Treibersignale ein (beachte, dass in 15 nur ein Sensor- und Treibersignal gezeigt sind, als in jeden Multiplexer 1502 bzw. 1504 eingegeben, jedoch sollte verstanden werden, dass 15 entweder ein Ein-Treiber- oder ein Zwei-Treiber-System repräsentieren kann). Auf diese Weise kann irgendeine Phasendifferenz zwischen dem bzw. den Treiberausgangssignal(en) und Sensorsignal(en) erhalten werden (so sehr wie die Sensorsignale in der obigen Diskussion analysiert werden), und diese Differenz kann in einer selbstkorrigierenden Rückkopplungsschleife verwendet werden.
  • Die Kalibrierung kann unter Verwendung der Multiplexer 1502 und 1504 vorgenommen werden, um dasselbe Signal bzw. die Signale am Eingang der Analog/Digital-Umsetzer 1506 und 1508 anzuordnen. In 15 können die Analog/Digital-Umsetzer 1506 und 1508 zusätzliche Analog/Digital-Umsetzer jenseits dieser beispielsweise in 4 gezeigten repräsentieren. Alternativ kann die Funktionalität der Analog/DigitalUmsetzer 1506 und 1508 unter Verwendung der existierenden Analog/Digital-Umsetzer 415 implementiert werden gemeinsam mit den angemessenen zusätzlichen Verbindungen.
  • Auch in 15 werden die Analog/Digital-Umsetzer 1506 und 1508 als synchron arbeitend angenommen. Das heißt, die Multiplexer 1502 und 1504 werden als ihre jeweiligen Signale in ihre jeweiligen Analog/Digital-Umsetzer 1506 oder 1508 an einem simultanen Punkt in der Periode der Signale ausgebend betrachtet werden. Sollte irgendwelche Verzögerung (d.h. Synchronitätsverlust zwischen den Analog/Digital-Umsetzern 1506 und 1508) in praktischen Implementierungen vorliegen, können solche Verzögerungen während eines Kalibrierungsprozesses (basierend auf einem gemeinsamen ausgewählten Signal) erfasst werden durch Berechnen der Phasendifferenz zwischen den Ausgangsgrößen der Analog/Digital-Umsetzer 1506 und 1508 und darauffolgend korrigiert werden, wenn das Treiberausgangssignal gemessen wird.
  • Der Prozessor 315 kann die Sensorinformation auf verschiedene Weise empfangen. Beispielsweise können der Analog/DigitalUmsetzer 1506 und der Analog/Digital-Umsetzer 1508 AD-Umsetzer 445 in 4 repräsentieren und können demnach als Rückkopplungsinformation basierend auf dem in die Treiber 210 eingeprägten Treiberstrom dienen. Als ein anderes Beispiel können die Analog/Digital-Umsetzer 1506 und 1508 einen oder mehrere AD-Umsetzer 447 in 4 repräsentieren und können demnach als Rückkopplungsinformation basierend auf der an die Treiber 210 angelegten Treiberspannung dienen.
  • In einer Implementierung kann die Geschlossenschleifen-Technik der 15 als eine Alternative zur oben beschriebenen Offenschleifen-Technik verwendet werden. Beispielsweise kann der Prozessor 315 die Syntheseparameter zu dem FPGA 310 senden basierend auf irgendeiner Schätzung der Verzögerung zwischen dem Sensorsignal am Analog/Digital-Umsetzereingang und dem Treibersignal am Analog/Digital-Umsetzerausgang. Sobald die gesamte Periode ausgegeben worden ist, kann der Prozessor 315 eine Periode von jeden (Sensor- und Treiberausgangssignale) auswählen und ihre Phasendifferenz φds messen. Diese Phasendifferenz kann subtrahiert werden oder addiert werden zu der Verzögerung, um hierdurch die Verzögerung in nachfolgenden Perioden zu reduzieren. Dieser Prozess kann kontinuierlich ablaufen.
  • In 15 sollte verstanden werden, dass genau wie in 8 und 9 das FPGA 310 üblicherweise eine dem Analog/DigitalUmsetzer 430 zugeordnete Verzögerung berücksichtigt. Das heißt, das FPGA 310 wird üblicherweise eine Verzögerung des Analog/Digital-Umsetzers annehmen, eine Phase mit einer zugeordneten Periode eine, zwei oder drei Perioden im voraus berechnen vor der bzw. den gemessenen Periode(n) und sein synthetisiertes Signal entsprechend ausgeben. Wenn das synthetisierte Signal vom Analog/Digital-Umsetzer 430 ausgegeben wird, wird es auf diese Weise in Phase sein mit den Sensorsignalen, wie erforderlich.
  • In einer anderen Implementierung kann die Geschlossenschleifen-Technik verwendet werden zum Ergänzen oder Verbessern der oben beschriebenen Offenschleifen-Techniken.
  • Die obige Beschreibung hat Techniken bereitgestellt zum Kompensieren von Digitalverzögerungen, die in Strömungsmessern mit Digitalkomponenten vorliegen. Unterschiedliche Techniken sind für die Verwendung in unterschiedlichen Anwendungen beschrieben worden. Beispielsweise wurde in der Einstellung der positiven Rückkopplung die Gruppenverzögerung des CODEC 305 kompensiert durch die Verwendung eines Ringpuffers, wie unter Bezugnahme auf 5 und 6 beschrieben. Als ein anderes Beispiel, das unter Bezugnahme auf 7-14 beschrieben worden ist, wurden in der Einstellung der Sinuswellensynthese sowohl Umsetzereingang und dem Treibersignal am Analog/Digital-Umsetzerausgang. Sobald die gesamte Periode ausgegeben worden ist, kann der Prozessor 315 eine Periode von jeden (Sensor- und Treiberausgangssignale) auswählen und ihre Phasendifferenz φds messen. Diese Phasendifferenz kann subtrahiert werden oder addiert werden zu der Verzögerung, um hierdurch die Verzögerung in nachfolgenden Perioden zu reduzieren. Dieser Prozess kann kontinuierlich ablaufen.
  • In 15 sollte verstanden werden, dass genau wie in 8 und 9 das FPGA 310 üblicherweise eine dem Analog/DigitalUmsetzer 430 zugeordnete Verzögerung berücksichtigt. Das heißt, das FPGA 310 wird üblicherweise eine Verzögerung des Analog/Digital-Umsetzers annehmen, eine Phase mit einer zugeordneten Periode eine, zwei oder drei Perioden im voraus berechnen vor der bzw. den gemessenen Periode(n) und sein synthetisiertes Signal entsprechend ausgeben. Wenn das synthetisierte Signal vom Analog/Digital-Umsetzer 430 ausgegeben wird, wird es auf diese Weise in Phase sein mit den Sensorsignalen, wie erforderlich.
  • In einer anderen Implementierung kann die Geschlossenschleifen-Technik verwendet werden zum Ergänzen oder Verbessern der oben beschriebenen Offenschleifen-Techniken.
  • Die obige Beschreibung hat Techniken bereitgestellt zum Kompensieren von Digitalverzögerungen, die in Strömungsmessern mit Digitalkomponenten vorliegen. Unterschiedliche Techniken sind für die Verwendung in unterschiedlichen Anwendungen beschrieben worden. Beispielsweise wurde in der Einstellung der positiven Rückkopplung die Gruppenverzögerung des CODEC 305 kompensiert durch die Verwendung eines Ringpuffers, wie unter Bezugnahme auf 5 und 6 beschrieben. Als ein anderes Beispiel, das unter Bezugnahme auf 7-14 beschrieben worden ist, wurden in der Einstellung der Sinuswellensynthese sowohl Gruppenverzögerung als auch dem Filter 450 zugeordnete Verzögerung durch die Verwendung von Maßnahmen kompensiert, die an Sensordaten vorgenommen wurden, um hierdurch den Beginn der Sinuswellensynthese zeitlich exakt abzustimmen. Als ein letztes Beispiel, das unter Bezugnahme auf 15 beschrieben worden ist, wurden die Treibersignale direkt gemessen und darauffolgend verglichen mit den Sensorsignalen als Teil einer Geschlossenschleifen-Rückkopplungsroutine, die eine Phasendifferenz zwischen den Signalen minimiert.
  • Diese Techniken können alleine verwendet werden oder in Kombination mit einer weiteren (oder mehreren anderen) Technik(en) . Beispielsweise könnten die Digitaldurchflussmesser der 1A und/oder 1B nur in einem Positiv-Rückkopplungs-Modus betrieben werden oder nur in einem Sinuswellensynthese-Modus. Als ein anderes Beispiel kann der Positiv-Rückkopplungs-Modus als Vorläufer eines Sinuswellensynthese-Modus verwendet werden. In einer anderen Implementierung ermöglicht die Verwendung des Positiv-Rückkopplungs-Modus als Vorläufer zu einem Sinuswellensynthese-Modus ein schnelles und zuverlässiges Hochfahren (und Betreiben) eines Digitaldurchflussmessers. Solch ein rasches und zuverlässiges Hochfahren kann ferner verbessert werden durch die Verwendung eines „Zufallserregungsmodus“ als Vorläufer des Positiv-Rückkopplungs-Modus, wie nachstehend detaillierter beschrieben.
  • 16 ist ein Ablaufdiagramm 1600, das Hochfahr- und Betriebstechniken für einen Digitaldurchflussmesser beschreibt. In dem Ablaufdiagramm 1600 wird bei einem Startpunkt 1602 ein Zustand des zu verwendenden Strömungsmessersystems auf einen Zufallsfolgen-Modus 1604 gesetzt. In diesem Modus wird das Strömungsrohr 215 mit einem weiten Band von Frequenzen erregt, welche als die (anfangs unbekannte) Resonanzfrequenz des Strömungsrohrs einschließend betrachtet werden. Nach einer gewissen Anzahl N von Abtastungen (die während einer ausgewählten Zeitdauer von beispielsweise näherungsweise 1 Sekunde aufgenommen werden könnten, entsprechend einer Aufwärmzeit des CODEC 305), wird das System umgeschaltet in einen Null-Ausgabe-Modus 1606 für eine kurze Zeitdauer (z.B. eine M-Abtastwertezählung, wobei M<<N ist), um es dem Strömungsrohr 215 zu ermöglichen, zu seiner Resonanzfrequenz zu kommen. Der Zufallsfolgen-Modus 1602 und der Null-Ausgabe-Modus 1606 werden nachstehend detaillierter unter Bezugnahme auf 17 beschrieben.
  • Daraufhin wird das System umgeschaltet in einen Positiv-Rückkopplungs-Modus 1608, welcher es dem Strömungsrohr erlaubt, schnell eine stabile Schwingung zu erreichen bei seiner Resonanzfrequenz und mit einer großen Amplitude. Der Positiv-Rückkopplungs-Modus korreliert mit dem oben unter Bezugnahme auf beispielsweise 5 und 6 diskutierten Positiv-Rückkopplungs-Modus. Weitere Details und Beispiele in Bezug auf den Positiv-Rückkopplungs-Modus 1608 werden im Zusammenhang mit dem Ablaufdiagramm 1600 nachstehend unter Bezugnahme auf 18 bereitgestellt.
  • Allgemein gesagt dient der Zufallsfolgen-Modus 1604 zum Sicherstellen, dass Antriebsenergie in das Strömungsrohr im betrachteten Frequenzbereich eingebracht wird, und der Null-Ausgabe-Modus 1606 ermöglicht es dem Strömungsrohr, in seine Resonanzfrequenz zu finden. Während der positiven Rückkopplung wird eine vorausgewählte Treiberverstärkung auf das Antriebssignal angewendet, um das Strömungsrohr 215 bis zu einem gewünschten Amplitudeneinstellpunkt hochzufahren.
  • Darauffolgend kann eine gewünschte Schwingungsform innerhalb des Treibersignals identifiziert werden, und eine phasenkompensierte Synthese kann danach begonnen werden während des Digitalsynthese-Modus 1610, so dass Messungen der durch das Strömungsrohr 215 fließenden Materialien bzw. des Materials fortgeführt werden können innerhalb des Prozessors 315. Die gerade beschriebene Hochfahrtechnik kann speziell nützlich sein unter schwierigen Hochfahrbedingungen, wie z.B. halbvolle 2-3"-Rohre.
  • Obwohl die gerade beschriebenen Techniken beim Hochfahren des Strömungsrohres 215 nützlich sind, sollte aus dem Ablaufdiagramm 1600 der 16 klar werden, dass auch ähnliche Techniken verwendet werden können während eines Betriebs des Strömungsmessers. Beispielsweise können während einer Zeit, wenn der Strömungsmesser in vollem Betrieb ist (d.h. Synthese-Modus) (1610), einige Schwierigkeiten auftreten, die eine Instabilität des Strömungsmessers (der Messungen) verursachen können.
  • Beispielsweise können irgendwelche externen Störungen des Systems vorliegen oder es können irgendwelche unerwartete Gegenstände/Materialien auftreten, die durch das Strömungsrohr fließen. Als anderes Beispiel können Bedingungen wie durch ein Zweiphasen-Durchfluss und/oder ein Dreiphasen-Durchfluss, insbesondere wenn rasch veranlasst oder unerwartet, einen Betrieb des Durchflussmessers verschlechtern oder unterbrechen.
  • In einem solchen Fall kann der Durchflussmesser zurückkehren zu einem Positiv-Rückkopplungs-Modus 1608, um das System neu zu stabilisieren (z.B. Neueinrichten einer geeigneten Frequenz, Phase und Amplitude der Treibersignale). Daraufhin geht der Durchflussmesser zurück in den Digitalsynthese-Modus 1610. Auch kann in dem Fall eines speziellen unterbrechenden Ereignisses der Strömungsmesser zurückkehren in den Zufallsfolgen-Modus 1604 und dann über den Null-Ausgabe-Modus 1606 wieder fortschreiten zu dem Positiv-Rückkopplungs-Modus 1608 und von dort zurück zu dem Digitalsynthese-Modus 1610.
  • In ähnlicher Weise, wenn der Durchflussmesser in einem Positiv-Rückkopplungs-Modus 1608 betrieben wird, kann entweder als ein Ergebnis eines Zurückgehens von dem Synthese-Modus 1610 in der gerade beschriebenen Weise oder als Teil des Hochfahrprozesses, der auch oben beschrieben worden ist, eine Störung oder Fehlfunktion den Durchflussmesser veranlassen, in den Zufallsfolgen-Modus 1604 zurückzukehren. Wieder in diesem Fall kann der Durchflussmesser neu voranschreiten durch den Null-Ausgabe-Modus 1606 zu dem Positiv-Rückkopplungs-Modus 1608 und von dort zurück zu dem Digitalsynthese-Modus 1610.
  • Auf diese Weise kann ein Digitaldurchflussmesser einen gewünschten Betriebszustand auf eine schnelle und zuverlässige Weise erlangen und/oder beibehalten.
  • 17 ist ein Ablaufdiagramm 1700 zum Zeigen des Zufallsfolgen-Modus 1604 und des Null-Ausgabe-Modus 1606 der 16 in größerem Detail. In 17 startet der Zufallsfolgen-Modus 1602 (1702) mit einem Abtastzählwert von Null (1704). Als nächstes wird der Abtastzählwert verglichen mit einem Wert N (1704), wobei, wie oben erwähnt, ein Wert für N vorausgewählt wird, um keiner gewünschten Dauer des Zufallsfolgen-Modus 1602 zu entsprechen.
  • Wenn der Abtastzählwert gleich oder kleiner als der Wert N ist, dann wird ein Zufallsfrequenzwert erzeugt (1708) und an ein Filter, wie z.B. das Filter 450 (1710), gesendet. Daraufhin wird ein Ergebnis des Filterprozesses weitergeleitet an einen Eingang des Digital/Analog-Umsetzers 430 (1712), und der Abtastzählwert wird um 1 inkrementiert (1714) .
  • Wenn der Abtastzählwert einen Wert erreicht, der größer ist als N, dann wird der Zufallsfolgen-Modus 1602 verlassen und der Null-Wertmodus 1604 wird gestartet (1716). In dem Null-Wert 1604 wird der Abtastzählwert auf Null gesetzt (1718) und wird dann mit einem vorausgewählten Wert M vergleichen (1720), der ausgewählt wird, um dem Strömungsrohr genügend Zeit zur Verfügung zu stellen, um in eine Vibration nahe oder nahe bei seiner Resonanzfrequenz zu gelangen.
  • Wenn der Abtastzählwert kleiner oder gleich M ist, dann wird ein Null-Wert an einen Eingang des Digital/Analog-Umsetzers 430 gesendet (1722), und der Abtastzählwert wird um 1 inkrementiert (1724). Wenn der Abtastzählwert größer als M ist, dann wird der Positiv-Rückkopplungs-Modus (1606) gestartet (s. 18).
  • Kurz, beim Erzeugen der Zufallsfrequenz erzeugt die Implementierung der 17 eine Serien von Zufallswerten, vielleicht bei einer Rate entsprechend der Abtastrate des Digital/Analog-Umsetzers 415, unter Verwendung eines Zufallszahlengenerators. Dann werden Frequenzen in dem zulässigen Bereich der Treiberfrequenzen (z.B. 0-100 Hz) durch Einspeisen der generierten Zufallsfolgen durch das Filter 450, welches zum Eliminieren von im wesentlichen allen Frequenzkomponenten oberhalb des relevanten Bereichs dient, zugelassen. Das resultierende Signal ist eine relativ glatte Zufallsfolge, die alle Frequenzen unterhalb der vorbestimmten Grenzfrequenz enthält.
  • In einigen Implementierungen kann statt des Entfernens aller Frequenzen oberhalb irgendeiner vorbestimmten Grenzfrequenz ein Bandpassfilter verwendet werden zum Entfernen aller Frequenzen oberhalb und unterhalb eines bestimmten Frequenzbereichs. Diese Implementierungen können speziell nützlich sein im Zusammenhang mit relativ hochfrequenten Strömungsrohren (z.B. einem Strömungsrohr mit einer Resonanzfrequenz von näherungsweise 1000 Hz).
  • Ferner sollte verstanden werden, dass der Zufallsfolgen-Modus 1604 bloß ein Beispiel des möglichen Stimulationssignals ist, das verwendet werden kann, um eine Strömungsrohroszillation im gewünschten Vibrationsmodus zu veranlassen. Andere vorbestimmte (kurze) Signalfolgen, die nicht auf der Basis der Sensorsignalanalyse modifiziert sind, können ebenfalls verwendet werden. Wie bei dem Zufallsfolgen-Modus 1604 kann dann die Analyse von durch solche Signalfolgen initiierten Sensorsignalen verwendet werden zum Schätzen von beispielsweise der Oszillationsfrequenz oder anderen Strömungsrohrparameterwerten. Diese Analyse kann dann ein Umschalten zu einem aufrechtzuerhaltenden Modus des Strömungsrohrbetriebs auslösen, in welchem das Treibersignal wie erforderlich modifiziert wird. Andere Beispiele solcher Treibersignale können Rechteckschwingungen, Sägezahnschwingungen oder irgendwelche anderen Abfolgen gewünschter a priori zu erzeugender Strömungsrohroszillationen beim Hochfahren einschließen vor dem exakten Kennen der Resonanzfrequenz des Strömungsrohrs.
  • 18 ist ein Ablaufdiagramm 1800 zum detaillierteren Zeigen des Positiv-Rückkopplungs-Modus 1608 der 16. Beim Start des Positiv-Rückkopplungs-Modus 1608 (1802) gibt das FPGA 310 die Sensorsignale ein und filtert sie und berechnet die virtuelle gewichtete Summe zum Puffern (1804). Dann wählt das FPGA 310 in einer weiteren Untermenge von Aktionen durch das FPGA 310 (1806) einen Wert aus dem Puffer 425 aus, der für die CODEC-Verzögerung steht (wie unter Bezugnahme auf 6 diskutiert) (1808), und wendet dann den ausgewählten Verstärkungsfaktor (z.B. zehn) auf das gepufferte Signal an zum Weiterleiten zu dem Digital/Analog-Umsetzer 430 (1810).
  • Währenddessen versucht während einer Untermenge von von dem Prozessor 315 vorgenommenen Aktionen (1812) der Prozessor 315, eine sinusschwingungsähnliche Schwingung zu identifizieren durch beispielsweise das Ablaufenlassen einiger Prüfungen an Segmenten von Signalen zwischen zwei aufeinanderfolgenden Negativ-zu-Positiv-Nulldurchgängen (1814). Wenn eine Sinusschwingung erfasst wird (1816), dann berechnet der Prozessor 315 eine Frequenz der Schwingung und eine mit dieser Frequenz einhergehende Filterverzögerung und setzt diese Information um in einen entsprechenden, verbesserten Pufferversatz (1818).
  • Der verbesserte Pufferversatz wird dann zu dem FPGA 310 gesendet (1820), wo er den vorhergehenden Pufferversatzwert ersetzt und es dem Treibersignal ermöglicht (multipliziert mit dem Verstärkungsfaktor), die Phase des Sensorsignals näher nachzuahmen. Indessen führt der Prozessor eine detailliertere Analyse der Eigenschaften der erfassten Sinusschwingung (1822) durch und prüft, um zu sehen, ob die analysierte, erfasste Sinusschwingung in beiden Sensorsignalen (1824) mit gewünschter Frequenz- und Phaseneigenschaft vorliegt.
  • Wenn nicht, setzt der Prozessor 315 diese Prüfung für eine vorbestimmte Zeit fort (1826), woraufhin der Prozessor 315 bestimmt, dass eine Digitalsynthese nicht zufriedenstellend eingegeben werden kann, und zurückkehrt zum Zufallsfolgen-Modus (1604). Wenn die Sinusschwingung(en) in zufriedenstellender Weise in den beiden Signalen vorliegen, dann leitet der Prozessor 315 die Syntheseparameter zu dem FPGA 310, und der Durchflussmesser tritt in den Digitalsynthese-Modus ein (1610). Der Betrieb des Digitalsynthese-Modus einschließlich Beispielen der Betriebsabläufe und Interaktionen des FPGA 310 und des Prozessors 315 sind jeweils oben unter Bezugnahme auf 7-13 diskutiert worden und speziell unter Bezugnahme auf die Ablaufdiagramme 1000 und 1100 der 10 bzw. 11.
  • In einigen Implementierungen können oben beschriebene Betriebsabläufe überlappen und/oder doppelt ausgeführt werden währen verschiedener Betriebsmodi. Beispielsweise kann der Prozessor 315 in irgendeinem von dem Zufallsfolgen-Modus 1604, der Null-Ausgabe 1606 und dem Positiv-Rückkopplungs-Modus 1608 versuchen, eine sinusschwingungsähnliche Schwingung in der oben in Bezug auf den Positiv-Rückkopplungs-Modus 1608 beschriebenen Weise zu identifizieren. Diese und andere Operationen können parallel und/oder seriell miteinander unter Verwendung das FPGA 310-/Prozessor 315-Architektur umgesetzt werden, die oben beschrieben worden sind, oder unter Verwendung irgendeiner anderen Arbeitsaufteilung unter ausgewählten (z.B. programmierten) Hardware-Komponenten.
  • Wie oben erläutert, wird die Treiberverstärkung während des Positiv-Rückkopplungs-Modus 1608 üblicherweise festgelegt auf einen hohen Wert, so dass die Amplitude des Oszillators exponentiell ansteigen kann. In dem Digitalsynthese-Modus 1610 jedoch kann die Amplitude variabel sein und kann durch einen vorausgewählten Algorithmus, der die Verstärkung als Steuervariable verwendet, gesteuert werden.
  • 19A-19F beschreiben Treibersignalerzeugung während einer Startabfolge für eine Implementierung des Digitaldurchflussmessers, wenn auf das gebogene Strömungsrohr 102 angewendet. 20A-20F beschreiben Treibersignalerzeugung während der Startabfolge der 19A-19F detaillierter.
  • Die in den 19A-19F sowie die in den 20A-20F gezeigten Daten sind jeweils für jeden Figurensatz Rohsensordaten (nur ein Sensor), gefilterte gewichtete Summen der Sensordaten, die Treiberverstärkung, der Schwingungsform-Synthese-Modus (d.h. zufallsgefilterte Hochfahrabfolge, Positiv-Rückkopplung oder Reinsinuswellensynthese), ein Merker bzw. Flag, der anzeigt, wenn eine Aktualisierung des Rückkopplungsverzögerungsparameters vorgenommen worden ist, und der tatsächliche Treiberausgang.
  • In 19A-19F, bis knapp bevor 1 Sekunde vergangen ist, ist die Treiberausgangsgröße zufällig während das CODEC 305 aufwärmt; d.h. der Durchflussmesser wird in dem Zufallsfolgen-Modus 1604 betrieben. Wenn Sensordaten beginnen, gesteuert zu werden, noch einmal knapp bevor 1 Sekunde vergangen ist, kann der Null-Ausgabe-Modus 1606 in 19F gesehen werden.
  • Wenn Roh- und gefilterte Sensordaten gesammelt werden (19A und 19B), wird eine Treiberverstärkung von 10 für näherungsweise 1,1 Sekunden angewendet (19C), woraufhin der Modus umschaltet vom Zufallsfolgen-Modus 1604 zum Positiv-Rückkopplungs-Modus 1608 (durch den Null-Ausgabe-Modus 1606, wie oben beschrieben). In dem Positiv-Rückkopplungs-Modus, wie in näherungsweise 1,02 bis 1,04 Sekunden in 20F zu sehen ist, verschlechtert sich eine Amplitude des Treibersignals anfänglich. Dieser Verlust an Amplitude tritt trotz der Tatsache auf, dass die Sensorsignale eine annehmbare (Resonanz-) Frequenz für das Strömungsrohr 215 repräsentieren, weil die Phase der Sensorsignale (z.B. 19A und 20A) und die Phase der Treibersignale (z.B. 19F und 20F) nicht übereinstimmen. Wenn der geschätzte Rückkopplungsverzögerungsterm angewendet wird, wie in 19E und 20E gezeigt (und wie oben unter Bezugnahme auf 18 erläutert), dann stimmen die Phasen näher überein und die Amplitude des Treibersignals beginnt anzuwachsen.
  • Sobald die Amplitude den Schwellwert zum Umschalten zur Wellenformsynthese erreicht, werden die unter Bezugnahme auf 8-11 beschriebenen Prozesse implementiert, in welchen die Frequenz, Filterverzögerung und Sinusschwingungsparameter bestimmt werden, woraufhin das FPGA 315 auf einen relevanten Nulldurchgang des Sensorsignals wartet, welcher bei näherungsweise 1,1 Sekunden in 19A und 20A auftritt, während welcher Zeit die Treiberausgangsgröße vorübergehend ausgesetzt wird (s. 19F und 20F). Bei dem geeigneten Nulldurchgang wird der Digitalsnythese-Modus 1610 implementiert, und die Amplitude wird bei einem stabilen Wert beibehalten.
  • Es sollte verstanden werden, dass während des Digitalsynthese-Modus 1610 die Treiberverstärkung in 19C und 20C besser verstanden werden dürfte als ein von dem oben erwähnten Amplitudensteueralgorithmus gesteuerter Dämpfungsfaktor unter der Annahme, dass eine Amplitude der synthetisierten Sinusschwingung bei einem maximalen Wert fest ist. Auch bestimmt bei näherungsweise 1,8 Sekunden der Amplitudensteueralgorithmus, dass ein maximaler Antriebsstrom nicht länger erforderlich ist, so dass reduzierte Strompegel erzeugt werden nach diesem Zeitpunkt zum Erzielen und Aufrechterhalten der Sensorspannung bei dem ausgewählten Einstellungspunkt.
  • Beim Implementieren der oben beschriebenen Techniken kann ein Hauptteil des FPGA-Codes sowohl für die gebogenen als auch die geraden Strömungsrohre verwendet werden, aber verschiedene Optionen (z.B. Filterkoeffizienten) können gegebenenfalls ein-/ausgeschaltet werden für unterschiedliche Strömungsrohre. In einer Implementierung sollte innerhalb des FPGA-Codes die Treiberausgangsamplitude 50% in dem Fall des geraden Strömungsrohrs 106 nicht übersteigen (um eine Zerstörung daran zu minimieren). Dieses Erfordernis kann nicht notwendig sein für das gebogene Strömungsrohr 102. Als eine Folge dieser Unterschiede kann eine separate FPGA-Bit-Datei erzeugt werden zum Antreiben jedes Strömungsrohrtyps. Trotzdem kann dasselbe, beispielsweise VxWorsk-Programm, für beide Arten von Durchflussrohren verwendet werden, einfach durch Verwenden unterschiedlicher Konfigurationen der Dateieinstellungen.
  • Demnach kann gesehen werden, dass diese Implementierungen zum Erzeugen des Treibersignals einschließlich der Aktionen zum Erzeugen einer Zufallsfolge zum Anregen zulässiger Frequenzen während des erwarteten Codec-Aufwärmens, Implementieren von positiver Rückkopplung zum Erzeugen eines raschen Anstiegs in der Amplitude während des Unterdrückens unerwünschter hoher Frequenzen und Erzeugen einer reinen Schwingungsform für kontinuierlichen Betrieb schnelle und präzise Strömungsrohrsteuerung und Messpräzision bereitstellen, was die vorteilhafte Verwendung eines Digital-Durchlussmessers ermöglicht.
  • Wie oben erwähnt, stellt die digitale Implementierung eines Durchflussmessers einige Vorteile bereit über analoge Implementierungen, in welchen ein Operationsverstärker üblicherweise zum Bereitstellen von Multiplikation der Sensorsignale mit einer Treiberverstärkung verwendet wird. Dies ist bedingt durch die Tatsache, dass Operationsverstärker leicht eine obere Grenzverstärkung haben, die erreicht wird, wenn der Dämpfungspegel des Strömungsrohrs einen gewissen Punkt erreicht (d.h. in Anwesenheit von Zweiphasen-Durchfluss). In diesen Situationen kann das System leicht blockieren, wenn die Amplitude des Strömungsrohrs unterhalb eines erforderlichen Pegels abfällt und die Rückkopplungsschleife nicht imstande ist, das Antreiben noch einmal in ausreichender Weise anzuheben. Darüber hinaus muss während der Hochfahrperiode, bevor ein Fluidum (vollständig) strömen kann, eine Anfangsschätzung des Treibersignals ausgewählt werden; ein Auswählen einer Verstärkung, die zu hoch ist, kann den Dämpfungspegel übermäßig variieren und/oder unerwünschte höhere Harmonische einfügen, während eine zu niedrige Verstärkung keinen Start des Strömungsrohrs mit sich bringt.
  • Die hier diskutierten Digital-Implentierungen können gegebenenfalls diese und andere Schwierigkeiten konventioneller Systeme ausräumen. Beispielsweise gibt es keine praktische Grenze für die Treiberverstärkung, die aufgewendet werden kann, und demnach ist ein Blockieren, bedingt durch nicht ausreichende Verstärkung, extrem unwahrscheinlich. Zusätzlich können Digitalsignal-Verarbeitungsfähigkeiten des Digitaldurchflussmessers temporär negative Verstärkung anwenden (d.h. absichtliches Einfügen einer 180°-Phasenverschiebung) zum Zwecke aggressiver Strömungsrohr-Vibrationssteuerung.
  • Beim Implementieren dieser und anderer Merkmale veranlasst der Digitalsender 104 eine Strömungsrohroszillation und erhält sie aufrecht derart, dass die von dem Digitalsender erzeugten Treibersignale in Bezug auf durch Analog- und/oder Digitalelemente, die sich innerhalb des Digitalsenders befinden oder ihm zugeordnet sind, kompensiert werden. Auf diese Weise haben Treibersignale einen gewünschten Phasenzusammenhang mit der Oszillation des speziellen verwendeten Strömungsrohrs (d.h. mit an dem Strömungsrohr erfassten Sensorsignalen) . Wie in dem obigen Beispiel gezeigt, kann eine solche, eine Phasenkompensation einschließende Steuerung des Treibersignalerzeugens implementiert werden auf eine Vielzahl von Weisen für eine Anzahl von Anwendungen in unterschiedlichen Einstellungen.
  • Zudem sollte nach Beschreibung der obigen Techniken als Beispiele für die Synthese reiner Sinusschwingungen mit gewünschten Phaseneigenschaften verstanden werden, dass verschiedene andere Signalmodifizierungen ebenfalls implementiert werden könnten, was in einer weiteren Steuerung und Flexibilität des Betriebs eines Digitaldurchflussmessers resultiert.
  • Beispielsweise können der Prozessor 315 und/oder das FPGA 310, sobald die Sinusschwingungssyntheseparameter wie oben beschrieben bestimmt worden sind, eine Gleichstromkomponente in dem Treibersignal bzw. den Treibersignalen einschließen, wenn die Sinusschwingung tatsächlich synthetisiert wird. Solch eine Gleichstromkomponente kann nützlich sein beispielsweise beim Kompensieren irgendwelcher beobachteter oder berechneter Gleichstromüberlagerungen in dem Antriebssignal bzw. den Antriebssignalen, wie sie durch Komponenten-Drift verursacht werden können.
  • Als weiteres Beispiel kann ein ausgewählter Hystereseumfang hinzugefügt werden zu dem Treibersignal bzw. den Treibersignalen. Eine solche Hysterese kann beispielsweise nützlich sein beim Kompensieren von Magnetkern-Hysteresen, die beispielsweise für Geschwindigkeitssensoren verwendeten magnetischen Spulen zugeordnet sind.
  • Als noch ein weiteres Beispiel sollte verstanden werden, dass eine Vielzahl von Sinusschwingungen erzeugt werden könnten, von denen jede ihre eigene Frequenz, Phase und Amplitudeneigenschaft hat. Diese Signale können verwendet werden zum Regulieren einer Schwingungsamplitude bei dem gewünschten Resonanzmodus bei gleichzeitigem Unterdrücken unerwünschter Resonanzmodi (z.B. durch Anwenden von negativer Verstärkung zum Unterdrücken unerwünschten Coriolis-Modi). Die Vielzahl von Sinusschwingungen könnte auch verwendet werden zum Betreiben des Strömungsrohrs in mehreren Modi auf einmal.
  • Ferner können die oben beschriebenen Implementierungen einen Aufbau und den Betrieb eines Durchflussmessers in einer oben nicht explizit beschriebenen Weise vereinfachen. Beispielsweise können Geschwindigkeitssensoren, wie z.B. Magnetspulen, welche häufig Größe, Gewicht und/oder Hysterese hinzufügen (wobei der letztere Faktor in dem Inhalt höherer Harmonischer in den Sensorsignalen resultieren kann), vollständig entfernt werden während des Digitalsynthese- und/oder Positiv-Rückkopplungs-Modus und ersetzt werden durch beispielsweise Beschleunigungsmesser. Solche Beschleunigungsmesser (oder andere Arten von Positionssensoren) können eine geringere Größe/geringeres Gewicht haben und eine bessere Hystereseeigenschaft als Magnetspulengeschwindigkeitssensoren.
  • Obwohl Digitalsynthese primär im Hinblick auf die Sinusschwingung diskutiert worden ist, kann es auch möglich sein, dass einige Implementierungen andere Schwingungsformen, wie z.B. Rechteckschwingungen oder Dreieckschwingungen, synthetisieren. Solche alternativen Schwingungsformen können in verschiedenen Betriebseinstellungen nützlich sein und können hinzugefügt werden oder alternativ verwendet werden zur Sinusschwingungserzeugung.
  • Eine Anzahl von Implementierungen ist beschrieben worden. Nichtsdestotrotz wird verstanden werden, dass verschiedene Modifikationen vorgenommen werden können. Beispielsweise kann der Digitaldurchflussmesser implementiert werden zum Behandeln von Zweiphasen-Durchflussbedingungen (z.B. Wasser und Gas) und/oder Dreiphasen-Durchflussbedingungen (z.B. Wasser, Gas und Öl) und kann implementiert werden in verschiedenen Strömungsrohrtypen, die von den hier diskutierten abweichen. Demgemäß liegen andere Implementierungen innerhalb des Schutzbereichs der folgenden Patentansprüche.
  • Claims (2)

    1. Verfahren, umfassend: Eingeben eines ersten Signals in einen Durchflussmesser, wobei das erste Signal einer Vibration eines Strömungsrohrs entspricht; Kompensieren einer Verzögerung des ersten Signals, welche Verzögerung einem dem Durchflussmesser zugeordneten Digitalelement zugeordnet ist; und Ausgeben eines zweiten Signals aus dem Durchflussmesser, wobei das zweite Signal der Vibration des Strömungsrohrs entspricht, dadurch gekennzeichnet, dass das Kompensieren der Verzögerung des ersten Signals umfasst: Eingeben des zweiten Signals von einem Ausgang des Durchflussmessers in einen Eingang des Durchflussmessers; Vergleichen des zweiten Signals mit dem ersten Signal zum Bestimmen einer Phasendifferenz zwischen dem zweiten Signal und dem ersten Signal; und Ausgeben eines überarbeiteten zweiten Signals aus dem Durchflussmesser, das abgeglichen ist zu dem zweiten Signal, basierend auf der Phasendifferenz, wobei das erste Signal ein erstes, einem ersten Sensor zugeordnetes Sensorsignal einschließt und ein zweites, einem zweiten Sensor zugeordnetes Sensorsignal, und das zweite Signal ein erstes, einem ersten Treiber zugeordnetes Treibersignal einschließt und ein zweites, einem zweiten Treiber zugeordnetes Treibersignal, und wobei das Vergleichen des zweiten Signals mit dem ersten Signal umfasst: Empfangen des ersten Sensorsignals und des ersten Treibersignals bei einem ersten Multiplexer; Ausgeben eines ersten multiplexierten Signals aus dem ersten Multiplexer; Empfangen des zweiten Sensorsignals und des zweiten Treibersignals an einem zweiten Multiplexer; Ausgeben eines zweiten multiplexierten Signals aus dem zweiten Multiplexer; und Vergleichen des ersten multiplexierten Signals und des zweiten multiplexierten Signals, um hierdurch die Phasendifferenz zu bestimmen.
    2. Digitaldurchflussmesser, umfassend: ein vibrierbares Durchflussrohr; einen mit dem Durchflussrohr verbundenen und zum Weiterleiten von Information über eine Bewegung des Durchflussrohrs mit Hilfe eines Sensorssignals betreibbaren Sensor; einen mit dem Durchflussrohr verbundenen und zum Verleihen von Bewegung auf das Durchflussrohr mit Hilfe eines Treibersignals betreibbaren Treiber; und ein mit dem Treiber und dem Sensor verbundenes Digitalsteuerungs- und Messsystem, wobei das Digitalsteuerungs- und Messsystem eine Schaltung umfasst, um das Sensorsignal und das Treibersignal im Wesentlichen in Phase miteinander zu halten, dadurch gekennzeichnet, dass das Digitalsteuerungs- und Messsystem betreibbar ist zum Vergleichen des Sensorsignals und des Treibersignals, um hierdurch eine Phasendifferenz zu bestimmen, und ferner betreibbar ist zum Veranlassen des Treibers, das Treibersignal mit einer um den durch die Phasendifferenz bestimmten Wert geänderten Phase anzuwenden, und dass das Digitalsteuerungs- und Messsystem ferner einen Multiplexer umfasst, der betreibbar ist zum Eingeben des Sensorsignals und des Treibersignals und zum Ausgeben eines kombinierten Signals, und wobei das kombinierte Signal durch das Digitalsteuerungs- und Messsystem analysiert wird zum Bestimmen der Phasendifferenz.
    DE10392459.0A 2002-03-29 2003-03-31 Antriebstechniken für einen Digitaldurchflussmesser Expired - Lifetime DE10392459B4 (de)

    Applications Claiming Priority (5)

    Application Number Priority Date Filing Date Title
    US36815302P 2002-03-29 2002-03-29
    US60/368,153 2002-03-29
    US10/400,922 US20030216874A1 (en) 2002-03-29 2003-03-28 Drive techniques for a digital flowmeter
    US10/400,922 2003-03-28
    PCT/US2003/009703 WO2003106931A2 (en) 2002-03-29 2003-03-31 Drive techniques for a digital flowmeter

    Publications (1)

    Publication Number Publication Date
    DE10392459B4 true DE10392459B4 (de) 2023-03-09

    Family

    ID=29406697

    Family Applications (2)

    Application Number Title Priority Date Filing Date
    DE10392459.0A Expired - Lifetime DE10392459B4 (de) 2002-03-29 2003-03-31 Antriebstechniken für einen Digitaldurchflussmesser
    DE10392459T Granted DE10392459T5 (de) 2002-03-29 2003-03-31 Antriebstechniken für einen Digitaldurchflussmesser

    Family Applications After (1)

    Application Number Title Priority Date Filing Date
    DE10392459T Granted DE10392459T5 (de) 2002-03-29 2003-03-31 Antriebstechniken für einen Digitaldurchflussmesser

    Country Status (5)

    Country Link
    US (7) US20030216874A1 (de)
    AU (1) AU2003267954A1 (de)
    DE (2) DE10392459B4 (de)
    GB (3) GB2412437B (de)
    WO (1) WO2003106931A2 (de)

    Families Citing this family (66)

    * Cited by examiner, † Cited by third party
    Publication number Priority date Publication date Assignee Title
    US7784360B2 (en) 1999-11-22 2010-08-31 Invensys Systems, Inc. Correcting for two-phase flow in a digital flowmeter
    US8447534B2 (en) 1997-11-26 2013-05-21 Invensys Systems, Inc. Digital flowmeter
    US20030216874A1 (en) * 2002-03-29 2003-11-20 Henry Manus P. Drive techniques for a digital flowmeter
    US8467986B2 (en) 1997-11-26 2013-06-18 Invensys Systems, Inc. Drive techniques for a digital flowmeter
    BRPI0318305B1 (pt) * 2003-05-21 2018-09-11 Micro Motion Inc método de monitorar um medidor de fluxo e sistema de monitoramento de medidor de fluxo
    WO2005003695A1 (en) * 2003-06-24 2005-01-13 Cidra Corporation Characterizing unsteady pressures in pipes using optical measurement devices
    WO2005010470A2 (en) * 2003-07-15 2005-02-03 Cidra Corporation An apparatus and method for compensating a coriolis meter
    US7134320B2 (en) * 2003-07-15 2006-11-14 Cidra Corporation Apparatus and method for providing a density measurement augmented for entrained gas
    US7299705B2 (en) * 2003-07-15 2007-11-27 Cidra Corporation Apparatus and method for augmenting a Coriolis meter
    DE10351310B4 (de) * 2003-10-31 2009-08-13 Abb Ag Vorrichtung und Verfahren zum Betrieb eines Coriolis-Massendurchflussmessers
    US7171315B2 (en) * 2003-11-25 2007-01-30 Cidra Corporation Method and apparatus for measuring a parameter of a fluid flowing within a pipe using sub-array processing
    US7152003B2 (en) 2003-12-11 2006-12-19 Cidra Corporation Method and apparatus for determining a quality metric of a measurement of a fluid parameter
    JP3783962B2 (ja) * 2004-03-24 2006-06-07 株式会社オーバル 三次モード振動式コリオリ流量計
    US7426852B1 (en) 2004-04-26 2008-09-23 Expro Meters, Inc. Submersible meter for measuring a parameter of gas hold-up of a fluid
    US7363800B2 (en) * 2004-05-17 2008-04-29 Cidra Corporation Apparatus and method for measuring compositional parameters of a mixture
    DE102005024079A1 (de) * 2004-05-25 2006-01-19 Invensys Systems, Inc., Foxboro Durchflussmessgerät-Zuteiltechniken
    US7380438B2 (en) 2004-09-16 2008-06-03 Cidra Corporation Apparatus and method for providing a fluid cut measurement of a multi-liquid mixture compensated for entrained gas
    US7389687B2 (en) 2004-11-05 2008-06-24 Cidra Corporation System for measuring a parameter of an aerated multi-phase mixture flowing in a pipe
    US7561203B2 (en) * 2005-01-10 2009-07-14 Nokia Corporation User input device
    EP1925916A3 (de) * 2005-07-11 2011-08-03 Invensys Systems, Inc. Verarbeitungstechniken für den Coriolis-Modus
    US7313488B2 (en) * 2005-07-11 2007-12-25 Invensys Systems, Inc. Coriolis mode processing techniques
    US7614302B2 (en) * 2005-08-01 2009-11-10 Baker Hughes Incorporated Acoustic fluid analysis method
    EP1750192B1 (de) * 2005-08-05 2011-02-16 Integrated Dynamics Engineering GmbH Steuerung eines aktiven Schwingungsisolationssystems
    DE102005050898A1 (de) * 2005-10-21 2007-05-03 Endress + Hauser Flowtec Ag In-Line-Meßgerät
    US7562586B2 (en) * 2005-10-21 2009-07-21 Endress + Hauser Flowtec Ag Method for monitoring an operating condition of a tube wall contacted by a flowing medium and inline measuring device therefore
    US7480576B2 (en) 2006-02-13 2009-01-20 Invensys Systems, Inc. Compensating for frequency change in flowmeters
    DE102006031198B4 (de) * 2006-07-04 2012-01-26 Krohne Ag Verfahren zum Betreiben eines Coriolis-Massendurchflußmeßgeräts
    US20080071424A1 (en) * 2006-09-18 2008-03-20 Protap Design, Llc Programmable positional liquid flow sensing device
    US10746680B2 (en) * 2006-11-16 2020-08-18 General Electric Company Sensing system and method
    US7501968B2 (en) 2006-12-15 2009-03-10 Honeywell International, Inc. Integrated multi-mode sensor
    DE102007061690A1 (de) * 2006-12-21 2008-06-26 Abb Ag Verfahren zum Betrieb eines Messgerätes vom Vibrationstyp sowie Messgerät von Vibrationstyp selbst
    WO2008109841A1 (en) 2007-03-07 2008-09-12 Invensys Systems, Inc. Coriolis frequency tracking
    US7941284B1 (en) * 2008-03-03 2011-05-10 Brooks Instrument, Llc Systems, apparatuses, and methods for measuring a fluid characteristic using a coriolis flow meter
    WO2009134827A1 (en) * 2008-05-01 2009-11-05 Micro Motion, Inc. Very high frequency vibratory flow meter
    MX2010013473A (es) * 2008-07-01 2010-12-21 Micro Motion Inc Sistema, metodo y producto de programa de computadora para generar una señal impulsora en un dispositivo de medicion vibratorio.
    DE102008046891B4 (de) * 2008-07-08 2014-10-30 Abb Technology Ag Messeinrichtung vom Vibrationstyp
    DE102009002289A1 (de) * 2009-04-08 2010-10-14 Endress + Hauser Flowtec Ag Verfahren zum Ermitteln einer Periodendauer eines Meßsignals
    US8301408B2 (en) * 2010-03-09 2012-10-30 Invensys Systems, Inc. Temperature prediction transmitter
    US9441994B2 (en) * 2010-11-10 2016-09-13 Wai Global, Inc. Mass air flow sensor
    DE102011076838A1 (de) 2011-05-31 2012-12-06 Endress + Hauser Flowtec Ag Meßgerät-Elektronik für ein Meßgerät-Gerät sowie damit gebildetes Meßgerät-Gerät
    RU2569048C2 (ru) 2011-07-13 2015-11-20 Майкро Моушн, Инк. Вибрационный измеритель и соответствующий способ для определения резонансной частоты
    CN103196479B (zh) * 2012-01-05 2016-08-03 中国石油化工股份有限公司 光纤流量、含水率传感器的实流标定装置及标定方法
    DE102012011932B4 (de) * 2012-06-18 2016-09-15 Krohne Messtechnik Gmbh Verfahren zum Betreiben eines Resonanzmesssystems und diesbezügliches Resonanzmesssystem
    DE102012011934B4 (de) * 2012-06-18 2014-07-10 Krohne Messtechnik Gmbh Verfahren zum Betreiben eines Resonazmesssystems und diesbezügliche Resonanzmesssystem
    CN102832888B (zh) * 2012-08-31 2016-05-18 太原太航科技有限公司 科氏力质量流量计驱动放大器
    US20140096586A1 (en) * 2012-10-06 2014-04-10 Spire Metering Technology LLC Device and method for measurement of ultrasonic transit times
    RU2577257C2 (ru) 2012-11-19 2016-03-10 Инвенсис Системз, Инк. Система испытания скважины на чистую нефть и газ
    DE102013100799A1 (de) 2012-12-21 2014-06-26 Endress + Hauser Flowtec Ag Umformerschaltung mit einer Stromschnittstelle sowie Meßgerät mit einer solchen Umformerschaltung
    CN104019850A (zh) * 2013-03-02 2014-09-03 山西太钢不锈钢股份有限公司 一种流体体积流量的测定方法
    CN104215306B (zh) * 2013-06-05 2017-10-17 中国石油天然气股份有限公司 油田注汽用蒸汽‑水两相流体测量仪表标定方法及装置
    DE102013109096A1 (de) 2013-08-22 2015-02-26 Endress + Hauser Flowtec Ag Gegen Manipulation geschütztes elektronisches Gerät
    CN103424217B (zh) * 2013-08-26 2015-04-08 常州朗博汽车零部件有限公司 高阻尼橡胶传动组件扭矩检测装置
    DE102014108107A1 (de) 2014-06-10 2015-12-17 Endress + Hauser Flowtec Ag Spulenanordnung sowie damit gebildeter elektromechanischer Schalter bzw. Meßumformer
    WO2016010514A1 (en) * 2014-07-14 2016-01-21 Micro Motion, Inc. Apparatus for determining a differential zero offset in a vibrating flowmeter and related method
    BR112017003278B1 (pt) * 2014-09-04 2021-03-23 Micro Motion, Inc. Método para determinar precisão de sistema, e, sistema para configurar um sistema de medição
    US9689736B2 (en) 2014-10-31 2017-06-27 Invensys Systems, Inc. Method to provide a quality measure for meter verification results
    US9863798B2 (en) 2015-02-27 2018-01-09 Schneider Electric Systems Usa, Inc. Systems and methods for multiphase flow metering accounting for dissolved gas
    US9664548B2 (en) 2015-03-19 2017-05-30 Invensys Systems, Inc. Testing system for petroleum wells having a fluidic system including a gas leg, a liquid leg, and bypass conduits in communication with multiple multiphase flow metering systems with valves to control fluid flow through the fluidic system
    KR20170013040A (ko) * 2015-07-27 2017-02-06 에스케이하이닉스 주식회사 버퍼, 반도체 장치 및 이를 이용한 반도체 시스템
    EP3365640B1 (de) * 2015-10-21 2020-08-12 Micro Motion, Inc. Vor-ort kalibrierung eines wandlers
    JP7008632B2 (ja) * 2016-02-26 2022-01-25 マイクロ モーション インコーポレイテッド 駆動信号を制限すること
    WO2018087344A2 (en) 2016-11-11 2018-05-17 Oxford University Innovation Limited Method and system for tracking sinusoidal wave parameters from a received signal that includes noise
    DE102016122241A1 (de) * 2016-11-18 2018-05-24 Krohne Messtechnik Gmbh Verfahren zum Betreiben eines Coriolis-Massedurchflussmessgeräts und Coriolis-Massedurchflussmessgerät
    US10474600B2 (en) 2017-09-14 2019-11-12 Samsung Electronics Co., Ltd. Heterogeneous accelerator for highly efficient learning systems
    DE102022129037A1 (de) 2022-11-03 2024-05-08 Krohne Messtechnik Gmbh Verfahren zum Testen eines Coriolis-Massedurchflussmessgeräts
    CN118243188B (zh) * 2024-05-24 2024-07-23 山东石油化工学院 一种科氏流量计起振方法

    Citations (7)

    * Cited by examiner, † Cited by third party
    Publication number Priority date Publication date Assignee Title
    US5228327A (en) 1991-07-11 1993-07-20 Micro Motion, Inc. Technique for determining a mechanical zero value for a coriolis meter
    US5555190A (en) 1995-07-12 1996-09-10 Micro Motion, Inc. Method and apparatus for adaptive line enhancement in Coriolis mass flow meter measurement
    US5774378A (en) 1993-04-21 1998-06-30 The Foxboro Company Self-validating sensors
    WO1999044018A1 (en) 1998-02-25 1999-09-02 Micro Motion, Inc. Generalized modal space drive control system for a vibrating tube process parameter sensor
    US6311136B1 (en) 1997-11-26 2001-10-30 Invensys Systems, Inc. Digital flowmeter
    US20010045134A1 (en) 2000-03-23 2001-11-29 Henry Manus P. Correcting for two-phase flow in a digital flowmeter
    US6327914B1 (en) 1998-09-30 2001-12-11 Micro Motion, Inc. Correction of coriolis flowmeter measurements due to multiphase flows

    Family Cites Families (82)

    * Cited by examiner, † Cited by third party
    Publication number Priority date Publication date Assignee Title
    US56682A (en) * 1866-07-24 Improvement in machines forpolishing enameled paper
    US347874A (en) * 1886-08-24 Steam-engine
    US5732193A (en) 1909-01-26 1998-03-24 Aberson; Michael Method and apparatus for behavioristic-format coding of quantitative resource data/distributed automation protocol
    US1782711A (en) * 1925-02-20 1930-11-25 Michael J Callahan Concealed unit for heating and ventilating
    USRE29383E (en) 1974-01-10 1977-09-06 Process Systems, Inc. Digital fluid flow rate measurement or control system
    US3956682A (en) 1974-03-28 1976-05-11 Pennwalt Corporation Two-wire position-to-D.C. current transducer
    GB1583545A (en) 1976-08-04 1981-01-28 Martin Sanchez J Control systems
    US4187721A (en) 1977-07-25 1980-02-12 S & F Associates Method and structure for flow measurement
    USRE31450E (en) 1977-07-25 1983-11-29 Micro Motion, Inc. Method and structure for flow measurement
    GB2085597B (en) 1980-10-17 1985-01-30 Redland Automation Ltd Method and apparatus for detemining the mass flow of a fluid
    US4422338A (en) 1981-02-17 1983-12-27 Micro Motion, Inc. Method and apparatus for mass flow measurement
    US4491025A (en) 1982-11-03 1985-01-01 Micro Motion, Inc. Parallel path Coriolis mass flow rate meter
    DE3464189D1 (en) 1984-08-03 1987-07-16 Itt Ind Gmbh Deutsche Videorecorder with a magnetic tape storage medium
    US4773257A (en) 1985-06-24 1988-09-27 Chevron Research Company Method and apparatus for testing the outflow from hydrocarbon wells on site
    US4688418A (en) 1985-10-17 1987-08-25 Texaco Inc. Method and apparatus for determining mass flow rate and quality in a steam line
    JPS62157546A (ja) 1985-12-31 1987-07-13 Horiba Ltd 自動車排気ガスのモ−ダルマス解析方法
    US4823614A (en) 1986-04-28 1989-04-25 Dahlin Erik B Coriolis-type mass flowmeter
    US4688148A (en) * 1986-06-06 1987-08-18 Tektronix, Inc. Packaging for electrical instruments
    GB8614135D0 (en) 1986-06-10 1986-07-16 Foxboro Co Coriolis mass flowmeters
    US4817448A (en) 1986-09-03 1989-04-04 Micro Motion, Inc. Auto zero circuit for flow meter
    DE8712331U1 (de) 1986-09-26 1988-01-28 Flowtec AG, Reinach, Basel Corioliskraft-Massendurchflussmesser
    US4911006A (en) 1986-10-03 1990-03-27 Micro Motion Incorporated Custody transfer meter
    US4852410A (en) 1986-10-03 1989-08-01 Schlumberger Industries, Inc. Omega-shaped, coriolis-type mass flow rate meter
    US4782711A (en) 1986-10-14 1988-11-08 K-Flow Division Of Kane Steel Co., Inc. Method and apparatus for measuring mass flow
    US4911020A (en) 1986-10-28 1990-03-27 The Foxboro Company Coriolis-type mass flowmeter circuitry
    US5343764A (en) 1986-10-28 1994-09-06 The Foxboro Company Coriolis-type mass flowmeter
    US5050439A (en) 1986-10-28 1991-09-24 The Foxboro Company Coriolis-type mass flowmeter circuitry
    US5271281A (en) 1986-10-28 1993-12-21 The Foxboro Company Coriolis-type mass flowmeter
    KR960000099B1 (ko) 1986-10-28 1996-01-03 더폭스보로 컴패니 코리올리 유형의 질량유량계
    IT1213434B (it) 1986-12-23 1989-12-20 Nuovo Pignone S P A Ind Meccan Procedimento perfezionato per la misura di portate ponderali e relativi dispositivi.
    US5027662A (en) 1987-07-15 1991-07-02 Micro Motion, Inc. Accuracy mass flow meter with asymmetry and viscous damping compensation
    US5052231A (en) 1988-05-19 1991-10-01 Rheometron Ag Mass flow gauge for flowing media with devices for determination of the Coriolis force
    US4852409A (en) 1988-06-09 1989-08-01 Fischer & Porter Company Signal recovery system for mass flowmeter
    US4879911A (en) 1988-07-08 1989-11-14 Micro Motion, Incorporated Coriolis mass flow rate meter having four pulse harmonic rejection
    US4852395A (en) 1988-12-08 1989-08-01 Atlantic Richfield Company Three phase fluid flow measuring system
    US5029482A (en) 1989-02-03 1991-07-09 Chevron Research Company Gas/liquid flow measurement using coriolis-based flow meters
    US4996871A (en) 1989-06-02 1991-03-05 Micro Motion, Inc. Coriolis densimeter having substantially increased noise immunity
    US4934196A (en) 1989-06-02 1990-06-19 Micro Motion, Inc. Coriolis mass flow rate meter having a substantially increased noise immunity
    CA2033992C (en) * 1989-06-09 1996-07-16 Donald Reed Cage Improved stability coriolis mass flow meter
    US5054326A (en) 1990-03-05 1991-10-08 The Foxboro Company Density compensator for coriolis-type mass flowmeters
    US5259250A (en) 1990-05-14 1993-11-09 Atlantic Richfield Company Multi-phase fluid flow mesurement
    US5054313A (en) 1990-07-17 1991-10-08 National Metal And Refining Company, Ltd. Control circuitry for viscosity sensors
    US5497665A (en) 1991-02-05 1996-03-12 Direct Measurement Corporation Coriolis mass flow rate meter having adjustable pressure and density sensitivity
    DE69124377T2 (de) * 1991-03-30 1997-06-12 Kazuhiro Okada Beschleunigungssensor mit Selbsttest
    EP0597021B1 (de) 1991-08-01 1996-04-24 Micro Motion Incorporated Massendurchflussmesser nach dem Coriolsprinzip
    US5295084A (en) 1991-10-08 1994-03-15 Micromotion, Inc. Vibrating tube densimeter
    US5379649A (en) 1991-12-23 1995-01-10 Micro Motion, Inc. Coriolis effect meter using optical fiber sensors
    US5218869A (en) 1992-01-14 1993-06-15 Diasonics, Inc. Depth dependent bandpass of ultrasound signals using heterodyne mixing
    GB9208704D0 (en) 1992-04-22 1992-06-10 Foxboro Ltd Improvements in and relating to sensor units
    US5347874A (en) 1993-01-25 1994-09-20 Micro Motion, Incorporated In-flow coriolis effect mass flowmeter
    WO1995010028A1 (en) 1993-10-05 1995-04-13 Atlantic Richfield Company Multiphase flowmeter for measuring flow rates and densities
    US5429002A (en) 1994-05-11 1995-07-04 Schlumberger Industries, Inc. Coriolis-type fluid mass flow rate measurement device and method employing a least-squares algorithm
    JP3219122B2 (ja) 1994-07-11 2001-10-15 横河電機株式会社 コリオリ質量流量計
    US5497666A (en) 1994-07-20 1996-03-12 Micro Motion, Inc. Increased sensitivity coriolis effect flowmeter using nodal-proximate sensors
    US5469748A (en) 1994-07-20 1995-11-28 Micro Motion, Inc. Noise reduction filter system for a coriolis flowmeter
    US5594180A (en) 1994-08-12 1997-01-14 Micro Motion, Inc. Method and apparatus for fault detection and correction in Coriolis effect mass flowmeters
    EP0698783A1 (de) 1994-08-16 1996-02-28 Endress + Hauser Flowtec AG Auswerte-Elektronik eines Coriolis-Massedurchflussaufnehmers
    EP1249689A3 (de) 1994-09-13 2003-02-12 Fuji Electric Co., Ltd. Vorrichtung zur Messung der Phasendifferenz und zugehöriges Massendurchflussmessgerät
    US5654502A (en) 1995-12-28 1997-08-05 Micro Motion, Inc. Automatic well test system and method of operating the same
    US5926096A (en) 1996-03-11 1999-07-20 The Foxboro Company Method and apparatus for correcting for performance degrading factors in a coriolis-type mass flowmeter
    US5877954A (en) 1996-05-03 1999-03-02 Aspen Technology, Inc. Hybrid linear-neural network process control
    DE19621132A1 (de) * 1996-05-24 1997-11-27 Bailey Fischer & Porter Gmbh Verfahren und Vorrichtung zur magnetisch-induktiven Durchflußmessung
    US5687100A (en) 1996-07-16 1997-11-11 Micro Motion, Inc. Vibrating tube densimeter
    US5734112A (en) * 1996-08-14 1998-03-31 Micro Motion, Inc. Method and apparatus for measuring pressure in a coriolis mass flowmeter
    US5804741A (en) 1996-11-08 1998-09-08 Schlumberger Industries, Inc. Digital phase locked loop signal processing for coriolis mass flow meter
    US6073495A (en) 1997-03-21 2000-06-13 Endress + Hauser Flowtec Ag Measuring and operating circuit of a coriolis-type mass flow meter
    US6199022B1 (en) 1997-07-11 2001-03-06 Micro Motion, Inc. Drive circuit modal filter for a vibrating tube flowmeter
    US6185470B1 (en) 1997-11-07 2001-02-06 Mcdonnell Douglas Corporation Neural network predictive control method and system
    US20030216874A1 (en) * 2002-03-29 2003-11-20 Henry Manus P. Drive techniques for a digital flowmeter
    US6092429A (en) 1997-12-04 2000-07-25 Micro Motion, Inc. Driver for oscillating a vibrating conduit
    US6102846A (en) 1998-02-26 2000-08-15 Eastman Kodak Company System and method of managing a psychological state of an individual using images
    US6249752B1 (en) * 1998-07-16 2001-06-19 Micro Motion, Inc. Vibrating conduit parameter sensors, operating methods and computer program productors utilizing real normal modal decomposition
    EP1112532B1 (de) 1998-08-17 2003-04-02 Aspen Technology, Inc. Verfahren und vorrichtung zur sensorbestätigung
    US5969264A (en) 1998-11-06 1999-10-19 Technology Commercialization Corp. Method and apparatus for total and individual flow measurement of a single-or multi-phase medium
    US6301973B1 (en) * 1999-04-30 2001-10-16 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Non-intrusive pressure/multipurpose sensor and method
    US6505131B1 (en) * 1999-06-28 2003-01-07 Micro Motion, Inc. Multi-rate digital signal processor for signals from pick-offs on a vibrating conduit
    US6318186B1 (en) * 1999-06-28 2001-11-20 Micro Motion, Inc. Type identification and parameter selection for drive control in a coriolis flowmeter
    US6318156B1 (en) 1999-10-28 2001-11-20 Micro Motion, Inc. Multiphase flow measurement system
    US6551251B2 (en) * 2000-02-14 2003-04-22 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Passive fetal heart monitoring system
    US6378354B1 (en) 2000-07-21 2002-04-30 Micro Motion, Inc. System for calibrating a drive signal in a coriolis flowmeter to cause the driver to vibrate a conduit in a desired mode of vibration
    US6505135B2 (en) 2001-03-13 2003-01-07 Micro Motion, Inc. Initialization algorithm for drive control in a coriolis flowmeter
    US7773257B2 (en) 2006-10-30 2010-08-10 Sony Corporation Color metric for halo artifacts

    Patent Citations (9)

    * Cited by examiner, † Cited by third party
    Publication number Priority date Publication date Assignee Title
    US5228327A (en) 1991-07-11 1993-07-20 Micro Motion, Inc. Technique for determining a mechanical zero value for a coriolis meter
    US5774378A (en) 1993-04-21 1998-06-30 The Foxboro Company Self-validating sensors
    US5555190A (en) 1995-07-12 1996-09-10 Micro Motion, Inc. Method and apparatus for adaptive line enhancement in Coriolis mass flow meter measurement
    US6311136B1 (en) 1997-11-26 2001-10-30 Invensys Systems, Inc. Digital flowmeter
    US6507791B2 (en) 1997-11-26 2003-01-14 Invensys Systems, Inc. Digital flowmeter
    WO1999044018A1 (en) 1998-02-25 1999-09-02 Micro Motion, Inc. Generalized modal space drive control system for a vibrating tube process parameter sensor
    US6327914B1 (en) 1998-09-30 2001-12-11 Micro Motion, Inc. Correction of coriolis flowmeter measurements due to multiphase flows
    US20010045134A1 (en) 2000-03-23 2001-11-29 Henry Manus P. Correcting for two-phase flow in a digital flowmeter
    US6505519B2 (en) 2000-03-23 2003-01-14 Invensys Systems, Inc. Correcting for two-phase flow in a digital flowmeter

    Also Published As

    Publication number Publication date
    US20050251351A1 (en) 2005-11-10
    US6950760B2 (en) 2005-09-27
    GB2402486B (en) 2005-11-02
    US20030212509A1 (en) 2003-11-13
    GB2428090A (en) 2007-01-17
    GB2412437B (en) 2006-05-31
    US7904256B2 (en) 2011-03-08
    GB0512421D0 (en) 2005-07-27
    GB2412437A (en) 2005-09-28
    GB2428090B (en) 2007-02-28
    US20030216874A1 (en) 2003-11-20
    GB0607218D0 (en) 2006-05-17
    AU2003267954A1 (en) 2003-12-31
    US7146280B2 (en) 2006-12-05
    US20070027639A1 (en) 2007-02-01
    US20110185820A1 (en) 2011-08-04
    GB0421644D0 (en) 2004-10-27
    US8483979B2 (en) 2013-07-09
    US7505854B2 (en) 2009-03-17
    WO2003106931A2 (en) 2003-12-24
    US20090277281A1 (en) 2009-11-12
    GB2402486A (en) 2004-12-08
    US8224593B2 (en) 2012-07-17
    WO2003106931A3 (en) 2004-03-04
    AU2003267954A8 (en) 2003-12-31
    US20130000418A1 (en) 2013-01-03
    DE10392459T5 (de) 2005-06-16

    Similar Documents

    Publication Publication Date Title
    DE10392459B4 (de) Antriebstechniken für einen Digitaldurchflussmesser
    DE102006031198B4 (de) Verfahren zum Betreiben eines Coriolis-Massendurchflußmeßgeräts
    DE3788425T2 (de) Verfahren und vorrichtung zur messung der dicke einer unbekannten flüssigkeit mit einem coriolis-messgerät.
    DE69504989T2 (de) Rauschunterdrückungsfiltersystem für einen coriolisdurchflussmesser
    DE69214290T2 (de) Ausschaltung des temperaturfehlers eines coriolis-durchflussmessers
    DE69209076T2 (de) Verfahren zur bestimmung des mechanischen nullpunkts eines coriolis-massendurchflussmessers
    DE3780282T2 (de) Verfahren zum messen von massendurchflussraten und vorrichtung dafuer.
    DE69017020T2 (de) Coriolis-massendurchflussmesser mit erhöhter störgeräuschunempfindlichkeit.
    DE69311377T2 (de) Dichtemesser mit vibrierendem rohr
    DE69013929T2 (de) Strömungsrohrantrieb mit einzelpeak-ausgangssignal für einen corioliszähler.
    DE102008046891B4 (de) Messeinrichtung vom Vibrationstyp
    DE69703981T2 (de) Dichtmesser mit vibrierendem rohr
    EP3472578B1 (de) Vibronischer sensor und verfahren zum betreiben eines vibronischen sensors
    EP1725840A2 (de) In-line-messgerät
    DE10358663B4 (de) Coriolis-Massedurchfluß-Meßgerät
    AT516420B1 (de) Verfahren und Vorrichtung zur Ermittlung der Dichte eines Fluids
    DE102008039012B4 (de) Verfahren zum Betreiben eines Resonanzmeßsystems und Resonanzmeßsystem
    WO2006053829A1 (de) Mess- und betriebsschaltung für einen coriolis-massendurchflussmesser mit drei messkanälen
    DE102004021690B4 (de) In-Line-Meßgerät mit einem Messaufnehmer vom Vibrationstyp
    DE102005024079A1 (de) Durchflussmessgerät-Zuteiltechniken
    EP1485681A1 (de) CORIOLIS&amp;minus;MASSEDURCHFLUSSMESSER ZUR KONZENTRATIONSMESSUNG
    DE102004007889A1 (de) Coriolis-Massedurchfluß-Meßgerät
    WO2005057131A9 (de) Coriolis-massedurchfluss-messgerät
    DE10262211B4 (de) Vibrationskreisel und Verfahren zum Betrieb eines Vibrationskreisels
    DE3105382C2 (de) Schaltanordnung für die Verarbeitung der Meßsignale magnetisch-induktiver Durchflußmeßgeräte