CN101706299A - Coriolis mass flow transmitter based on DSP - Google Patents
Coriolis mass flow transmitter based on DSP Download PDFInfo
- Publication number
- CN101706299A CN101706299A CN200910185560A CN200910185560A CN101706299A CN 101706299 A CN101706299 A CN 101706299A CN 200910185560 A CN200910185560 A CN 200910185560A CN 200910185560 A CN200910185560 A CN 200910185560A CN 101706299 A CN101706299 A CN 101706299A
- Authority
- CN
- China
- Prior art keywords
- mrow
- dsp
- data
- frequency
- signals
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 66
- 230000003750 conditioning effect Effects 0.000 claims abstract description 12
- 239000003990 capacitor Substances 0.000 claims description 59
- 238000001914 filtration Methods 0.000 claims description 35
- 238000000034 method Methods 0.000 claims description 35
- 238000012545 processing Methods 0.000 claims description 34
- 238000004364 calculation method Methods 0.000 claims description 29
- 238000005070 sampling Methods 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 23
- 238000005259 measurement Methods 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 16
- 230000003044 adaptive effect Effects 0.000 claims description 15
- 238000012935 Averaging Methods 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 101100162020 Mesorhizobium japonicum (strain LMG 29417 / CECT 9101 / MAFF 303099) adc3 gene Proteins 0.000 claims description 12
- 238000003491 array Methods 0.000 claims description 7
- 230000002093 peripheral effect Effects 0.000 claims description 6
- 239000012530 fluid Substances 0.000 claims description 5
- 239000004973 liquid crystal related substance Substances 0.000 claims description 5
- 239000000463 material Substances 0.000 claims description 5
- 101100434411 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ADH1 gene Proteins 0.000 claims description 4
- 101150102866 adc1 gene Proteins 0.000 claims description 4
- 230000003321 amplification Effects 0.000 claims description 4
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 3
- 238000000691 measurement method Methods 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 claims description 3
- 102100030891 Actin-associated protein FAM107A Human genes 0.000 claims description 2
- 101100156949 Arabidopsis thaliana XRN4 gene Proteins 0.000 claims description 2
- 101001063917 Homo sapiens Actin-associated protein FAM107A Proteins 0.000 claims description 2
- 101150016871 LTI6B gene Proteins 0.000 claims description 2
- 101100370098 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) TOR2 gene Proteins 0.000 claims description 2
- 101100215777 Schizosaccharomyces pombe (strain 972 / ATCC 24843) ain1 gene Proteins 0.000 claims description 2
- 101150042711 adc2 gene Proteins 0.000 claims description 2
- 238000002474 experimental method Methods 0.000 claims description 2
- 230000003071 parasitic effect Effects 0.000 claims description 2
- 238000007493 shaping process Methods 0.000 claims description 2
- 230000003068 static effect Effects 0.000 claims description 2
- 230000001629 suppression Effects 0.000 claims description 2
- 238000004088 simulation Methods 0.000 abstract description 4
- 238000001514 detection method Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 19
- 108091022873 acetoacetate decarboxylase Proteins 0.000 description 12
- 230000008859 change Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 5
- 239000011324 bead Substances 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 102100024061 Integrator complex subunit 1 Human genes 0.000 description 3
- 101710092857 Integrator complex subunit 1 Proteins 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 239000013078 crystal Substances 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 108010076504 Protein Sorting Signals Proteins 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000035772 mutation Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 101000797092 Mesorhizobium japonicum (strain LMG 29417 / CECT 9101 / MAFF 303099) Probable acetoacetate decarboxylase 3 Proteins 0.000 description 1
- 101150051106 SWEET11 gene Proteins 0.000 description 1
- 235000010724 Wisteria floribunda Nutrition 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 239000002361 compost Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000003337 fertilizer Substances 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 230000002277 temperature effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000005514 two-phase flow Effects 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Measuring Volume Flow (AREA)
Abstract
The invention relates to the field of flow detection, and provides a Coriolis mass flow transmitter based on DSP, which comprises an amplifying filter circuit, an analog-to-digital converter 1, an analog-to-digital converter 2, a voltage reference source, a voltage follower, a current source, a difference amplifier, an analog-to-digital converter 3, a simulation driver module, a digital signal processor DSP minimum system, an expanding SRAM, an expanding EEPROM, a man-machine interface, 4-20mA current output and pulse output, a power module and a software. The simulation driver module stimulates a vibration exciter in the Coriolis mass flow transmitter so as to lead a flow tube to vibrate with natural frequency. Two magnetoelectric sensors positioned at two sides of the flow tube output two ways of sine-wave signals which are amplified and filtered by two ways of conditioning circuits with same parameter, then respectively and simultaneously sampled by two analog-to-digital converters with same model, and converted in digital value, and delivered to DSP by two multichannel buffered serial ports of the DSP. DSP adopts digital filter to eliminate the noise of the signals, is self-adaptive to a lattice notch filter to calculate the frequency, and then adopts the DTFT algorithm taking negative frequency into account to calculate to phase difference, thus obtaining the mass flow finally.
Description
Technical Field
The invention relates to the field of flow detection, in particular to a Coriolis mass flow transmitter based on a DSP (digital signal processor), and particularly relates to a Coriolis mass flow meter signal processing system and an analog driving system which adopt digital filtering to filter signals, self-adapt to a lattice notch filter to calculate signal frequency and then adopt a DTFT (delay tolerant shift keying) algorithm considering negative frequency to calculate phase difference.
Background
The Coriolis mass flowmeter (hereinafter abbreviated as Coriolis mass flowmeter) can directly measure mass flow, is one of the most rapidly developed flowmeters at present, and has wide application prospect. The Coriolis mass flowmeter comprises a sensor part and a transmitter part, wherein the sensor part comprises a magnetoelectric speed sensor, a vibration exciter and a temperature sensor, and the transmitter part comprises a signal conditioning and processing part and a driving part. In the case of the signal conditioning and processing section, it is required to accurately measure the phase difference of the signals from the two flow (magnetoelectric velocity) sensors and to track the change in frequency thereof. Digital signal processing techniques and Digital Signal Processors (DSPs) have been applied to coriolis mass flowmeters at first abroad.
(1) Method based on discrete Fourier transform
The output signals of coriolis mass flowmeters are processed by Discrete Fourier Transform (DFT) by Micro Motion in the united states (Paul romano. coriolis mass flow meter lifting a subsistianial intensive interaction. us Patent No.4934196, jun.19, 1990) using a Digital Signal Processor (DSP) of the TMS series as the processing core of the secondary meter. When the sampling is not performed in the whole period, the calculation error of DFT can not meet the requirement of the instrument precision, therefore, the ideas of rough measurement, fine measurement and frequency tracking are provided. However, some of these key technologies are not disclosed. E.g. how zero crossings are taken when the frequency changes, etc. Referring to the idea of the university of compost industry, a signal processing system which adopts DFT and is based on DSP of ADSP series is developed, the technical difficulty which is not described in the United states patent is solved, and improvement is made on the aspects of fine measurement and frequency tracking (Xuke army, Cuixin, and the like, a Coriolis mass flowmeter digital signal processing system, an invention patent, the patent number is ZL 00108414.3, the application date is 2000.4.30, and the authorization publication date is 2002.12.4).
(2) Method based on signal amplitude
The Japanese Fuji company (Yoshimura Hiroyki. phase difference measuring apparatus for measuring phase difference input signals, EP0791807A2, 27.08.1997; Yoshimura Hiroyki. phase difference measuring apparatus and flow meter thermal of European patent application, EP 0702212A2, 20.03.1996) amplifies signals from two sensors in a Coriolis mass flowmeter and sends the two signals to a differential amplifier to obtain the difference between the signals of the two sensors. The multiplexer sends the three signals to the A/D converter, DSP for DFT, calculates the phase difference between two sensor signals, and selects one signal as reference to compensate the error caused by the characteristic difference of each transmission channel. The problems with this approach are: the phase difference of the signals of the two sensors is very small (generally less than 4 degrees), so that the amplitude of the differential amplifier is very small and is very easy to be interfered by noise; the compensation method is too time-consuming because 6 paths of signals need to be collected when the phase difference is calculated once.
(3) Method based on adaptive linear enhancement
U.S. patent US-5555190 issued on 9/10/1996 and to h.v. Derby et al and chinese patent CN-1190461a issued on 8/12/1998 both designed a DSP-based digital signal processing system.an Adaptive Linear Enhancement (ALE) technique and apparatus is employed in the DSP to accurately determine the frequency and phase relationship between vibrating flow tubes and thereby more accurately determine the mass flow through the mass flow meter. The two embodiments differ only in the frequency estimation/linear enhancement portion, the ALE of the first embodiment is achieved by Adaptive Notch Filters (ANF) for both parameter estimates, the second embodiment uses four adaptive notch filters, with two notch filters in series for the left and right channels, respectively. For the first embodiment, estimating the two parameters increases the complexity of the algorithm; the second embodiment uses two cascaded ANFs, the complexity of the algorithm is higher than the first embodiment, and since the second stage ANF is based on the first stage ANF, the second stage converges only after the first stage converges, and therefore the convergence rate is reduced for large frequency variations.
Aiming at the problems, the university of fertilizer industry designs a signal processing method and a signal processing device, which take the precision of frequency tracking and the convergence speed of an algorithm into consideration, do not obviously increase the complexity of the algorithm, and are not easy to overflow when implemented by fixed points (Xuke army, Xuwenfu, a digital signal processing system of a Coriolis mass flowmeter based on AFF and SGA, an invention patent, a patent number of ZL03108944.5, an application date of 2003.4.4, and an authorization notice date of 2005.3.23.). The signal processing link consists of three parts: multi-decimation filtering, frequency estimation/linearity enhancement and phase difference calculation. The frequency estimation/linearity enhancement section employs a Funnel-type (channel) filter. The filter has two design parameters, and the zero pole is more strongly limited, and the order is higher than the ANF of the same level. The sliding Goertzel algorithm which is easier to realize in a fixed point mode and is very suitable for a time-varying sinusoidal signal is adopted in the phase difference calculation part. However, the convergence process of the SGA algorithm is still longer, the tracking accuracy is not high enough, and the accuracy requirement of the Coriolis mass flowmeter cannot be met; meanwhile, when the method is used for an actual system, the calculation amount is large, and real-time implementation is difficult.
Disclosure of Invention
In order to solve the problems, the invention adopts the following technical scheme: the Coriolis mass flow transmitter based on the DSP comprises an amplifying and filtering circuit, an analog-to-digital converter 1, an analog-to-digital converter 2, a voltage reference source, a voltage follower, a current source, a differential amplifier, an analog-to-digital converter 3, an analog driving module, a DSP minimum system of a digital signal processor, an externally-extended static random access memory (SARAM), an externally-extended EEPROM (electrically erasable and programmable read only memory), a human-computer interface, 4-20 mA current output and pulse output, a power supply module and a software module. The analog drive module excites a vibration exciter within the coriolis mass flow sensor causing the flow tube to vibrate at a natural frequency. Two magnetoelectric sensors positioned at two sides of the flow tube output two paths of sine wave signals, the two paths of sine wave signals are amplified and filtered by two paths of conditioning circuits with the same parameters, then are simultaneously sampled and converted into digital quantity by two analog-to-digital converters with the same model, and are sent into the DSP through two multi-channel buffer serial ports of the DSP. The DSP adopts digital filtering to eliminate the noise of the signal, the adaptive lattice notch filter calculates the frequency, and then adopts a negative frequency modified Discrete Time Fourier Transform (DTFT) algorithm to calculate the phase difference, and finally the mass flow is obtained.
The invention has the advantages that: the phase difference calculation precision is improved, the convergence time is shortened, a system which can be accepted and applied in the industry is developed by using the DSP, and a digital signal processing algorithm is realized in real time.
Drawings
FIG. 1 is a hardware overview block diagram of the system of the present invention.
FIG. 2 shows a reference source for signal conditioning and acquisition components of the system of the present invention.
FIG. 3 is an analog drive for the system of the present invention.
Fig. 4 is a signal conditioning and acquisition circuit of the system of the present invention.
FIG. 5 is a temperature compensation circuit of the system of the present invention.
FIG. 6 is a DSP minimum system of the present invention.
FIG. 7 shows the option of the boot method of the system and the external memory.
FIG. 8 shows the liquid crystal and keyboard circuitry of the system of the present invention.
FIG. 9 is a diagram of the pulse output of the system of the present invention.
FIG. 10 shows the 4-20 mA current output of the system of the present invention.
FIG. 11 is a block diagram of the software overview of the system of the present invention.
FIG. 12 is a flow chart of a main monitoring program of the system of the present invention.
FIG. 13 is a diagram of an INT1.4 interrupt for the system of the present invention.
FIG. 14 is a diagram illustrating INT7.1 and INT7.2 interrupts of the system of the present invention.
Fig. 15 is a schematic diagram of the signal acquisition and transmission process of the system of the present invention.
FIG. 16 is a flow chart of the DMA interrupt service routine of the system of the present invention.
FIG. 17 is a cycle length array for the system of the present invention.
FIG. 18 is a flow chart of the algorithm process of the system of the present invention.
FIG. 19 is a flow chart of the adaptive lattice notching algorithm of the present system.
FIG. 20 is a flow chart of the negative frequency corrected DTFT algorithm of the system of the present invention.
FIG. 21 is a flow chart of an averaging module of the system of the present invention.
FIG. 22 is a fragmented schematic of the system of the present invention.
FIG. 23 is a flow chart of PWM wave output of the system of the present invention.
Detailed Description
The hardware block diagram of the system of the invention is shown in figure 1. The system comprises a Coriolis mass flow sensor (comprising a magnetoelectric velocity sensor A, a magnetoelectric velocity sensor B, a vibration exciter and a resistance temperature sensor RTD), an amplifying filter circuit, an analog-to-digital converter ADC1, an analog-to-digital converter ADC2, a voltage reference source, a voltage follower, a current source, a differential amplifier, an analog-to-digital converter ADC3, an analog driving module, a DSP minimum system, an external-expansion SARAM, an external-expansion EEPROM, a human-computer interface, 4-20 mA current output and pulse output and a power module. The system is divided into a plurality of circuit boards according to functions, and the most important is an analog board and a digital board, wherein the analog board comprises a sensor signal conditioning and acquisition circuit, an analog driving circuit and a temperature compensation circuit; the latter includes DSP minimum system and external memory.
The working process of the system of the invention is as follows: the analog drive module excites a vibration exciter inside a Coriolis mass flow sensor (hereinafter referred to as Coriolis sensor) to vibrate the flow tube at a natural frequency. Two magnetoelectric sensors positioned at two sides of the flow tube output two paths of sine wave signals, the two paths of sine wave signals are amplified and filtered by two paths of conditioning circuits with the same parameters, then are respectively sampled by two ADCs 1 and ADCs 2 with the same model and are converted into digital quantity, and the digital quantity is sent into the DSP through two multi-channel buffer serial ports McBSP of the DSP to calculate the phase difference of the two paths of signals. The DSP adopts an adaptive lattice notch filter with more one tap to carry out digital filtering on the signals, and then adopts a DTFT algorithm considering negative frequency to calculate the phase difference. The temperature of the fluid affects the angular elastic modulus of the flow tube and thus the measured value, so temperature compensation is required. The generated constant current flows through the temperature sensor Pt100 in the Coriolis sensor, and the voltage at two ends of the Pt100 is amplified by the differential amplifier, sampled by the ADC3, converted into digital quantity and sent to the DSP for temperature compensation correlation calculation. Converting the phase difference into mass flow, adding temperature compensation, displaying the final value on an LCD, and matching with 4-20 mA current output and pulse output.
Fig. 2 shows a voltage reference source of the signal conditioning and acquisition part. U10 is a reference source, and its output is passed through a voltage follower formed from operational amplifier U11 to raise current output capability. C32 and C33 are input and output filter capacitors; the capacitor C37 and the internal resistor U10 form an RC filter for filtering the output; the capacitors C34, C35 and C36 are output filter capacitors; c30 and C38 are decoupling capacitances.
Fig. 3 is an analog driving circuit. The input signal LP + is amplified by a non-inverting amplifier composed of U16A, R31 and R34 and then sent to a band-pass filter composed of U16B, C51, R29, R27, C47 and R26 for filtering, R32 and C55 are used for absorbing sharp pulses in the output signal of U16B, and capacitors C48, C50, C52 and C53 are decoupling capacitors. One path of the output signal of the U16B is amplified by a non-inverting amplifier composed of U18B, R43 and R46 and then is sent to an input end Y1 of the analog multiplier U19; the other path is sent to a rectifying circuit, the rectifying circuit consists of U17A, U17B, R28, R30, R35, R36, R33, C56, D1 and D2, an input alternating current signal is rectified into a direct current signal, the value of the direct current signal is in direct proportion to the amplitude of the alternating current signal, and capacitors C49 and C54 are decoupling capacitors. The output TPE of the rectification circuit is sent to a gain control circuit, the gain control circuit is composed of U18A, resistors R37, R39, R44, a potentiometer W1 and a capacitor C65, the output W of the gain control circuit is reduced along with the increase of the input, and vice versa; the capacitors C57 and C62 are decoupling capacitors. The output of U18A is provided to another input X1 of the analog multiplier U1, and the output of U19 is the product of X1 and Y1. The gain control circuit controls X1 to control the output of U19, with X1 increasing when LP + decreases; when LP + is increased, X1 is decreased, and the purpose of stabilizing the output of U19 is achieved. R38 and R41 are current limiting resistors, and C58, C60, C64 and C66 are decoupling capacitors. The DC blocking circuit is composed of C61, R40 and R42, the DC blocked signal is amplified by a non-inverting amplifier composed of U20A, R45 and R47, C59 and C63 are decoupling capacitors, and the unused operational amplifier U20B is connected to a follower and the input is grounded. The output TPM of the U20A is sent to an amplifying circuit with vibration over-strong protection, which is composed of the U21B, the U21A and peripheral devices, so as to avoid the sensor damage caused by over-large driving voltage. The output TPE of the rectification circuit is connected to the inverting input end of the U21A, when the TPE is smaller than the value set by the resistor R50 and the potentiometer W2, the output of the U21A is close to the positive power voltage, the P-channel junction field effect transistor Q1 is conducted, the resistors R48 and R55 are connected to the ground in parallel, and the amplification factor is 6 times; on the contrary, when the TPE is larger than the set values of the resistor R50 and the potentiometer W2, the output of U21A approaches the negative power voltage, Q1 is cut off, and the amplification factor is 1, thereby playing a role of protecting the sensor. The resistor R52 and the capacitor C75 filter input signals TPE, the resistor R51 is a current-limiting resistor, the U21B, the R49, the R48 and the R55 form a non-inverting amplifier, the C73 and the R54 are blocking circuits, the input signals TPM are blocked, the capacitor C67 has a filtering function, and the capacitors C68, the C70, the C74 and the C76 are decoupling capacitors. The output signal of U21B passes through DC blocking circuit composed of C72 and R53, and then passes through power amplifier composed of U22, R56 and R57 to amplify voltage by 2 times and increase output power, and then drives vibration exciter, and the capacitors C69, C71, C77 and C78 are decoupling capacitors.
Fig. 4 is a sensor signal conditioning, acquisition circuit. The signals RP + and RP-are connected to the input end of the U2 in a differential mode, amplified by an instrument amplifier U2, sent to a second-order low-pass filter composed of an operational amplifier U3A, a peripheral resistor and a capacitor for filtering, and sent to the input end of the ADC U1 through an amplitude limiting protection circuit composed of R7 and U4. Input signals RP + and RP-are connected in a differential mode through R8 and R9, R2 sets the amplification factor of U2, C2, C6, C12 and C14 are decoupling capacitors, R5, R6, R1, R12, C5 and C10 and operational amplifier U3A form a second-order low-pass filter, C3, C9, C11 and C13 are decoupling capacitors, and a capacitor C90 is used for filtering high-frequency interference generated by high-frequency switching devices in U1.
U1 is differential input ADC1, signal is connected to AIN0 (pin 6), another input end AIN1 (pin 7) is connected to 2.5V reference source; the reference required by U1 is taken from an external 2.5V reference source, VREF (pin 4) is connected with 2.5V reference, and VREFN (pin 3) is grounded; the data transmission interface of U1 is connected with the multichannel buffering serial port McBSP interface of DSP: a clock SCLK (pin 18) is connected with MCLKXA, a data input DIN (pin 17) is connected with MDXA, a data output DOUT (pin 16) is connected with MDRA, a chip select CS is connected with MFSXA, wherein resistors R3, R4, R10 which are connected in series and corresponding pins of U1 are input with parasitic capacitors to form RC low-pass filtering to filter spike pulses; the control pins DRDY and SYNC are connected to the GPIO port of the DSP; the capacitors C7 and C8 are filter capacitors, and the capacitors C1, C4, C15 and C17 are decoupling capacitors.
The clock of U1 and U6 adopts the same clock source, the clock generated by an external active crystal oscillator U9.U9 passes through a Schmitt trigger U5 to improve the driving capability, and then is sent to clock input pins of U1 and U6 in two paths, a magnetic bead L1 and a capacitor C29 filter a power supply, the capacitor C31 and a resistor R25 are used for filtering high-frequency sharp pulses in the clock signal, and the resistor R11 is also used for filtering the sharp pulses.
Fig. 5 is a temperature compensation circuit. The temperature sensor in the sensor is Pt 100. The constant current source is added to Pt100, and the difference is amplified and then sent to ADC3 for sampling and conversion into digital quantity which is sent to DSP. The Pt100 is connected to RTD + and RTD-positions in the figure, and the U23, R61, U24, R58, R59, R67, Q2 and Q3 generate constant current sources to flow through the Pt 100. R62 and TP1 are used for testing and calibration, and Pt100 can be disconnected and TP1 can be shorted for testing and calibration. The voltage at two ends of Pt100 is amplified by a differential amplifier composed of U26A, U26B, R64, R63 and R65 and then is sent to the input end AIN + (pin 3) and AIN- (pin 4) of ADC3U25 with differential input. R70, C88, R71 and C89 respectively form an RC low-pass filter; the capacitors C80 and C87 are filter capacitors; r60, U27, R66 and U29 respectively form an amplitude limiting protection circuit; the reference source required by U25 is provided by U28, C85 and C86 are input and output filter capacitors, and C84 and U25 internal resistors form an RC filter for filtering the U28 output. The U25 digital interface is connected with SPI port of DSP, clock SCLK (pin 1) is connected with SPICLKA, chip select CS (pin 2) is connected with SPISTEA, data input DIN (pin 10) is connected with SPISIMOA, and data output DOUT (pin 9) is connected with SPISOMIA. The capacitors C79, C81, C82 and C83 are decoupling capacitors.
FIG. 6 shows a minimum DSP system including a crystal oscillator, JTAG, decoupling capacitors, etc. SPI, McBSP and a plurality of general purpose input and output pins (GPIO) of the DSP (U1) are mainly used, RAM is expanded, and unused pins are properly processed. U2 is an active crystal oscillator and provides a clock for the DSP, magnetic beads L3 and a capacitor C34 filter a power supply, and C35 and R7 filter spike pulses in a clock signal; the pins 142 and 25 of the DSP U1 are functional pins, and need to be respectively in an effective state and an ineffective state during resetting, and R1 and R4 are pull-up resistors; DS2 is a DSP working indicator light, and R22 is a current limiting resistor; a resistor R3 connected with a pin 57 of the U1 provides a path for bias current, pins 55 and 56 of the U1 are internal ADC reference output, and capacitors C27 and C26 need to be connected to the ground in parallel; p1 is JTAG interface, R2, R5, R6 are pull-down, pull-up resistance that require to connect in the manual; the magnetic bead L1 isolates a digital 3.3V from an analog 3.3V, and the magnetic bead L2 isolates a digital 1.9V from an analog 1.9V; the capacitors C1-C25 and C28-C33 are decoupling capacitors.
FIG. 7 shows the DSP extension memory and DSP boot method options. U4 is external RAM, when connected with DSP, its address line and data line can be disordered, chip selection CS (pin 6) is connected with XZCS7n of DSP, WE (pin 17) is connected with XWE0n, OE is connected with XRDn, C47 and C48 are decoupling capacitors. U5 is an external EEPROM and is connected with a GPIO port of the DSP, C46 is a decoupling capacitor, and R14 is a pull-down resistor; resistors R13, R18, R15, R19, R16, R20, R17 and R21 are connected with address lines XA15, XA14, XA13 and XA12, and whether R18, R19, R20 and R21 are welded on the PCB determines the starting mode of the DSP.
FIG. 8 shows a liquid crystal and keyboard circuit. The P1 is a liquid crystal interface, the 3.3V power supply voltage is reduced by connecting the D1 in series to meet the power supply requirement of the liquid crystal, the 4 th pin of the P1 is the ground, the 1 st, the 2 nd and the 3 rd pins are respectively a chip selection pin, a clock pin and a data input pin and are connected with GPIO (general purpose input/output) of the DSP, and because the level is not matched with the level of the DSP, the resistors R2-R8 form a voltage division circuit to match the level; p3 is a keyboard interface, the 5 th pin is the ground, the rest is connected with GPIO of DSP, resistors R1, R4, R9 and R10 are current limiting resistors, capacitors C1, C2, C3 and C4 are used for hardware debouncing, and when the system is powered down, D2, D3, D4 and D5 provide a path for releasing charges on the capacitors.
FIG. 9 shows a pulse output circuit, wherein when the input signal Pulsein is high, Q4 is turned on, U1 is turned on, Q2 is turned off, Q1 and Q3 are turned off, and the output PulseOut is low; when the PulseIn is at a low level, Q4 is turned off, U1 is turned off, the base voltage of Q2 is clamped at 1.4V by D1 and D2, Q2 is turned on, voltage drops are generated on resistors R8 and R3, which cause Q1 and Q3 to be turned on, and output PulseOut is at a high level, and the voltage value thereof is equal to the voltage drop at (R6+ R10) or (R7+ R9), which is related to resistors R1, R8, R3 and R4, current limiting resistor R11 is a base resistor, R5 is a current limiting resistor at the input end of the optocoupler U1, R2 is a pull-up resistor at the output end of U1, D1 and D2 are clamping diodes, resistors R1, R1 and R1 determine the magnitude of current flowing through R1, thereby determining the voltage value of the pulse output at a high level, and the voltage values of resistors (R1 + R1, i.e. the voltage drop of capacitors R1, C1, and C1, i.e.
FIG. 10 shows a 4-20 mA output circuit. U3 is DAC, and the flow calculation value (digital quantity) converts into analog voltage through U3 and sends to U2 input, and U2 converts the voltage into 4 ~ 20mA current output. R2 and U4 provide a voltage reference source for U3, and C5 and C6 are decoupling capacitors. The 12 pin of U2 outputs 10V voltage; q3 increases its current output capability; u1 is LDO, providing 3.3V power; c3 and C2 are filter capacitors; r1 determines the relation between the U2 input voltage and output current; the capacitor C4 stabilizes the circuit; the operational amplifiers in the Q1, the Q2 and the U2 form a voltage/current conversion circuit; the capacitor C1 is a decoupling capacitor.
The software working process of the invention patent comprises:
(1) after the system is powered on, on one hand, the analog driving circuit generates a driving signal to excite the vibration of the Coriolis flowmeter, on the other hand, the DSP completes the initialization of each part of the system, and then starts and synchronizes the sampling conversion of the two paths of ADCs.
(2) After the data is converted, generating interruption through GPIO; the interrupt service program transmits the conversion result to the receiving pins of the two multi-channel buffer serial ports McBSP, then starts Direct Memory Access (DMA) transmission, and transmits the data on the receiving pins of the McBSP to a temporary array of an internal storage space through the DMA under the condition of not disturbing the work of a CPU; when the temporary arrays are full, two DMA receiving interrupts are generated, and the interrupt service program stores the data in the two temporary arrays into two circular buffer arrays in the external SARAM.
(3) Acquiring 500 points of new continuous data from the external circulation array, judging the size of the signal, if the signal is small, indicating that the driving is not stable, and continuing to wait; if the signal is greater than the set value, the algorithm module may begin to be called.
(4) The two paths of 500 point data signals are filtered and preprocessed, noise is filtered, and signal quality is improved; then, calling an adaptive lattice type notch filter for the two paths of filtered signals to respectively estimate fundamental frequencies of the two paths of sensor signals, then averaging frequency values of the two paths of signals to obtain a signal fundamental frequency instantaneous value, averaging the frequency, setting a comparison range, and updating the frequency value if the variation amplitude of the obtained average frequency value is in the comparison range, and if the variation amplitude exceeds the comparison range, updating the frequency value, so that a stable and accurate frequency value can be obtained, and an instantaneous density value can be obtained by combining coefficients; and finally, calculating the phase difference of the two paths of signals by calling a negative frequency modified DTFT algorithm, averaging the result, obtaining the time difference by combining the frequency value, and further obtaining the instantaneous flow value by combining the set instrument coefficient.
(5) Reading the signal of the temperature sensor, converting the signal into a temperature value, obtaining a corresponding temperature compensation coefficient according to the material of the measured flowmeter, and performing temperature compensation on the instantaneous flow.
(6) Generating interruption by timing 1s through a CPU timer, and accumulating instantaneous flow in an interruption service program to obtain accumulated flow; and meanwhile, setting an output result zone bit.
(7) After the measurement result is obtained, on one hand, the TMS320F28335 displays the measurement values such as the accumulated flow, the density and the temperature through an LCD; and on the other hand, corresponding 4-20 mA current and PWM pulse are output outwards through the DA or ePWM module according to the obtained instantaneous flow, so that the upper computer or other secondary instruments can count conveniently.
(8) And finally, inquiring whether the keyboard flag bit is set, if so, calling a keyboard service subprogram, and if not, repeating the process of 2-8 to measure the flow in real time.
The digital signal processing system of the invention has the main tasks of carrying out corresponding digital signal processing algorithm on real-time sampling data to complete flow measurement, compiling corresponding programs to carry out function expansion by utilizing hardware resources, meeting the requirements of users on instruments, and the system of the invention also has the functions of pulse output, current output, instrument coefficient setting, human-computer interface (namely keyboard function and LCD display) and the like besides measuring flow, in addition, in order to ensure the normal operation of the system, error detection and fault reset functions are added in the system, therefore, the whole digital signal processing system has more functions and complex software design, and in order to facilitate the design and maintenance of the system, the software design adopts a modularized design scheme to combine subprograms which complete specific functions or similar functions into a functional module and then is called uniformly by a main monitoring program, the general block diagram of the software is shown in fig. 11, and the general block diagram mainly includes an initialization module, a signal acquisition module, an algorithm module, an interrupt module, a result output module, a man-machine interface module, an EEPROM operation module, an error module, and a watchdog reset module.
Fig. 12 shows a system main monitoring flow. The main monitoring program is a general scheduling program of the whole signal processing system, and calls subprograms in each module to realize functions required by the instrument. The method is a dead-cycle program, a system I is electrified, a main monitoring program automatically runs, and the system I enters a cycle of continuous calculation and processing. The basic process is as follows: initializing immediately after a system is powered on; after initialization, starting an ADC (analog to digital converter) to convert sampling data, calling a calculation module, processing a signal sampling sequence by adopting a signal processing algorithm, and calculating the signal frequency of a sensor, the phase difference of two paths of signals and the time difference of two paths of signals; then, calculating instantaneous flow and accumulated flow according to the set meter coefficient; averaging the result, and compensating the temperature of the instantaneous flow and the accumulated flow; then calling a system output module, and sending corresponding pulse quantity and standard 4-20 mA current outwards according to the calculated instantaneous flow; after the output is finished, the main monitoring program inquires the keyboard operation flag bit to carry out corresponding processing, and finally returns to the operation, and starts to carry out signal processing, flow calculation and signal output again, and the cycle is continued.
After the system is powered on, the system firstly needs to initialize the software and hardware resources of each module before entering the normal flow measurement process. The module is responsible for initializing programmable devices and software resources in a system, and mainly comprises initialization of a DSP chip TMS320F28335, initialization of an external programmable device, initialization of interrupt configuration, initialization of software resources and the like.
The initialization of the TMS320F28335 mainly comprises system clock initialization and initialization of internal integrated function modules of the TMS320F28335 used by a system, such as a watchdog, a system external interface XINTF, ePWM1a in an enhanced PWM module, a timer, a direct memory access DMA module, a multi-channel buffer serial McBSP module, a Flash memory, a general purpose digital multiplexing interface GPIO and the like.
The external programmable device initialization comprises two ADC chips for collecting flow sensor signals, one ADC3 chip for collecting temperature sensor signals and LCD initialization. The initialization of the ADC chip is mainly the writing of control words such as the chip operation mode. The LCD initialization then includes: control pin initialization, writing mode command words, initializing display contents, and the like.
The initialization of the interrupt configuration comprises PIE control register initialization, interrupt vector table initialization, and mapping of the interrupt used in the system.
The software resource initialization is mainly used for initializing global data structures, arrays, parameters and the like of all modules. Some data in the software needs to be used continuously and should be configured into global variables; in addition, the data shared between the modules should also be configured in a global variable form. According to different initialization modes, the initialization of global variables is mainly divided into two types: one is initialized by an EEPROM, mainly including instrument parameters, calibrated fixed deviation and the like; the other type is direct copy initialization, which mainly includes state variables reflecting the system working state and constant variables for reducing the program calculation amount and facilitating the program call.
TMS320F28335 internally uses a centralized peripheral interrupt extension controller PIE to process the priority of all on-chip peripheral and external pin interrupts and the response of the interrupts, the interrupts are divided into 12 groups, each group has 8 interrupts multiplexing a CPU level interrupt, INT1-INT12, the priority of the 12 core level interrupts is fixed and can be shielded. INT1 and int7.int1.4 are external interrupt sources, one of the ADCs for collecting two sensor signals indicates that two ADCs convert data completely, as shown in fig. 13, Ready signals of the two ADCs are connected to GPIO8 and GPIO10 of the DSP, because of the requirement of the system, two ADCs must be started simultaneously for converting data with the same configuration, so that the time for converting data is consistent, and thus the Ready signals should be effective at the same time, for simplicity, the Ready signal of one ADC is taken to send an interrupt request through the GPIO port, if the interrupt is mapped in the interrupt configuration initialization and the PIE is enabled, the CPU will respond to the interrupt, query and judge whether the Ready signal of the other ADC is effective in the interrupt service program, if effective, execute the next step, if invalid, continue to wait, but if the two ADCs are consistent, the two ADCs do not take too long time, so as described above, the number of interrupts is reduced, since the acquisition of two sensor signals by the ADC is the first step in the operation of the system, the interrupt should have the highest priority in the peripheral interrupt, and therefore is mapped to the INT1 of the CPU.
INT1.7 is triggered by the periodic interruption of a CPU timer Time0, and is used for calculating the accumulated flow at regular Time, converting the frequency value of the PWM wave corresponding to the instantaneous flow, converting the voltage value of the DAC output corresponding to the instantaneous flow, and setting an output zone bit to prepare for calling an output module. Since the interrupt is mainly used for the calculation of the total flow, the priority must also be higher to ensure the correctness of the result, so the INT1 of the CPU can be mapped by using the CPUTime0 timer.
In the system, a processor is not allocated to some timing processing with low real-time requirement, and a delay function is adopted to perform software timing, so that the system is convenient to implement. Such as timing keyboard scanning, timing LCD refreshing, timing temperature reading, timing flicker of LCD nixie tube in setting mode, and communication time sequence for generating SPI by GPIO simulation. INT7.1 and INT7.2 consist of the interrupts of the DMA transmission channel 1 and the transmission channel 2. As shown in fig. 14, the two DMA channels are used to transmit two ADC sampling-converted coriolis sensor signals received by the multi-channel buffer serial McBSP of the DSP, and the DMA transfers data to the ping _ buffer or pong _ buffer array in the internal RAM without disturbing the CPU, and when the buffer array is full, generates a DMA reception interrupt, modifies a DMA transfer address in an interrupt service routine, and reads data in the full ping _ buffer or pong _ buffer into a long circular buffer array in the external SARAM for algorithm invocation. Because the whole digital signal processing system must ensure real-time, continuous and correct input signals, the DMA transmission of the TMS320F28335 can be adopted to realize correct transfer of a large amount of real-time data without reducing the working efficiency of a CPU. DMA receive interrupts are lower priority than ADC interrupts.
The signal acquisition module comprises two parts: acquiring Coriolis sensor signal data and acquiring temperature sensor signals. The sensor signal data acquisition is mainly used for checking Coriolis frequency and phase difference of two channels, and the acquisition process is divided into an acquisition transmission process and a signal reading process.
The digital signal processing of the Coriolis mass flowmeter takes signals of two sensors as a research object, the two signals are required to be sampled simultaneously, and real-time sampled data are required to be continuously stored for being called by a digital signal processing algorithm to calculate a flow value. In order to save a large amount of data in time, a signal acquisition and transmission process as shown in fig. 15 is adopted.
Because the system has very high requirement on the accuracy of the algorithm, an ADC with excellent performance must be selected. The system selects two ADCs to sample two sensor signals respectively, the ADC is a low-noise delta sigma type 24-bit ADC, the performance can meet the requirement of an algorithm, and the system is provided with an SPI serial interface to facilitate data transmission with a DSP. The system uses two paths of multichannel buffer serial ports McBSP to communicate with two paths of AD.
After the ADCs are configured, two paths of ADCs start synchronous conversion, after single data is converted, an interrupt is generated through the GPIO8 (an interrupt is generated through a DRDY pin of one ADC, a DRDY signal of the other AD is inquired in an interrupt service program), a clock is provided for data received by the McBSPa port and the b port in the interrupt service program, two paths of 24-bit sampling data reach receiving registers of the McBSPa port and the b port, the upper bit is received in the DRR2, the lower bit is stored in the DRR1, 32-bit shaping data are stored in a receiving buffer of the McBSP, if two paths of interrupt are generated by the McBSP at the moment to enable the CPU to read the data, the CPU utilization rate is too low, the sampling frequency is 2kHz, 500ms of interrupt once data reading is performed, the CPU does not use most of time for algorithms and other system functions at all, so that the whole system cannot be realized at all, therefore, a DMA transmission function of the McBSP is selected, the data is transmitted to an internal RAM in, and the sampled data can not be lost or covered, and the utilization rate of the CPU is improved.
28335 may serve the ADC, McBSP, ePWM, XINTF, and SARAM, thus requiring that the DMA interrupt be designated as a receive interrupt for McBSPa/b.
Note that configuring DMA must precede configuring McBSP and AD. In this way, once the McBSP receiving register has data, the McBSP automatically starts DMA transmission, and respectively transmits two paths of signal data to designated places pingL _ buffer and pingR _ buffer (the buffer size is 40 points) of the RAM inside the DSP, when the buffer is full, the two paths of DMA transmission respectively generate interrupt, and the DMA interrupt service routine has two tasks: firstly, modifying the buffer addresses into a pong _ buffer and a pong _ buffer (the buffer size is still 40 points) (if the pong _ buffer is adopted, the addresses are modified into a ping _ buffer, and the addresses are used alternately), so that the loss of AD sampling data is prevented; and secondly, reading the two paths of data from the internal buffer filled with the data, putting the two paths of data into a longer cyclic array positioned in the externally-extended SARAM, and recording a head pointer and a tail pointer of the cyclic array and the length of new data to prepare for data fetching by an algorithm. A DMA interrupt service routine flow diagram is shown in figure 16.
The signal reading refers to a process of reading continuous data from a cyclic length array channel _ signal in the external SARAM, and the structure of the cyclic length array is shown in fig. 17, and the array is provided with three flags, namely a head pointer Top _ pointer, a Tail pointer Tail _ pointer, and a new data length (the new data refers to sampling data which is not used in a signal processing algorithm yet), Newda _ len.
When the DMA interrupt service program puts the data in the buffer into a cycle array, Top _ pointer + +, Newda _ len + +, like Newda _ len + +, the Newda _ len records the existing sampled data, the main program judges the long reading of Newda _ len, when 500 points exist, 500 points are taken from the cycle array to the signalLCH [500] and signalRCH [500] and the integer data is converted to the floating-point data to prepare for calling the algorithm, at this time, one point is taken out, Tail _ pointer + +, after the data is taken out, the algorithm program is called to calculate the flow, and after 500 points are calculated, Newda _ len-500 enters the next cycle. It can be seen that the head pointer Top _ pointer is used to indicate that data is written into the loop array, the Tail pointer Tail _ pointer is used to indicate that data is read out of the loop array, and the new data length Newda _ len is used to indicate valid data available for the algorithm.
If Newda _ len > Sum _ len, namely the storage data speed is higher than the taking data speed, the data is covered when the data is not taken out, the time for taking out the data is too long, the algorithm is too late, the algorithm needs to be simplified or the sampling frequency needs to be reduced, an overflow error is generated at the moment, the overflow _ error is marked, the processing of the error is to reinitialize the cycle length array, the Top _ pointer is just required to be the Rail _ pointer, and the algorithm needs to be improved or the sampling frequency needs to be reduced.
The temperature signal acquisition is directly converted into digital quantity after the analog signal is input into the conditioning circuit and sampled by the ADC 3. ADC3 is a low-power consumption, buffered 24-bit delta sigma type ADC, and adopts SPI mode communication, realizes data transfer and control through the SPI module mouth on the DSP. Since the temperature of the medium of the flow tube does not change greatly within a certain time, the real-time requirement of temperature information is not high, and therefore a high SPI communication rate is not needed, the ADC3 is configured to work in a single conversion mode, namely AD conversion is started, the ADC3 is changed into a sleep state after converting a piece of data, until the CPU inquires that DOUT/RDY is valid and has a free access number, and the next piece of data can be converted after waking up the ADC3 again. Therefore, the system can read the temperature sensor signal when temperature information is needed, and resource waste caused by collecting real-time data is avoided. The sampling rate of the ADC3 is relatively low, and at the same time, a delay software function can be used to read the temperature at regular time and wake up the ADC3 to convert the next number, so that the temperature information can be updated at a fixed time.
The algorithm module comprises most numerical value operation subprograms carried out by the system, and mainly comprises signal preprocessing, sensor signal fundamental frequency estimation, phase difference and time difference calculation of two paths of signals, average processing of results, instantaneous flow calculation and flow temperature compensation. The processing flow of the whole algorithm modulo fast is shown in fig. 18.
The signal preprocessing refers to filtering the acquired sensor signals, and filtering out unnecessary frequency components to lay a foundation for a following algorithm. Signal preprocessing is divided into two cases: one is, for delta sigma type ADC, because AD itself is sampled by very high sampling frequency 1.92MHz, and then the interior is provided with filtering average processing, so the digital quantity noise transmitted to DSP by 2kHz is lower, therefore, software filtering only needs to filter out higher component frequency, and simple FIR low-pass filtering can meet the requirement of the subsequent algorithm; for the other, for other AD or audio processing chips Codec, an extra-decimation filter is needed, that is, to enhance the suppression of noise, the output signal of the coriolis flowmeter is sampled at a higher sampling frequency of 16kHz, and then the extra-decimation filter is used for anti-aliasing filtering and decimation, and generally two-stage extra-decimation filtering is needed to achieve a better effect, and after decimation, the data amount is reduced, and the signal quality is improved without increasing the subsequent calculation load. If interference of other frequencies exists in the signal in practical application, a trap filter with adjustable trap depth and width can be designed by analyzing the frequency spectrum of the signal to specifically process the actual interference, and the interference resistance of the whole algorithm is improved.
The digital filtering formula is:
x(n)=(b0u(n)+b1u(n-1)+…bmu(n-m)-a1x(n-1)-…-akx(n-k))/a0(1)
in the formula, u and x represent the original signal sequence obtained by sampling and the signal sequence after digital filtering, { b }0,…,bm,a0,…,akWhere m and k are the filter coefficients and the order of the filter. The filter coefficients can be set by the system panel according to the field conditions.
The preprocessed signals can call self-adaptive lattice notch filtering to estimate the fundamental frequency of the signals, the two sensor signals have deviation due to the inconsistency of two flow tubes of the Coriolis mass flowmeter, in order to improve the accuracy of calculating the phase difference, the two signals respectively pass through two different self-adaptive lattice notch filters to respectively estimate the frequencies of the two signals, and then a compromise frequency value obtained on average is transmitted to a later algorithm.
The lattice IIR wave trap is formed by cascading two lattice filters of all poles and all zeros, and the transfer function of the lattice IIR wave trap is shown as a formula (2).
H1(z) contributes to the pole part of the whole lattice trap, corresponding to the AR model, and H2(z) contributes to the zero portion of the entire lattice IIR trap, which is a lattice FIR filter. In order to reduce the calculation load, the zero point is fixed on the unit circle, so that the purpose of self-adaptive wave trapping can be achieved by only adjusting one parameter. Fixing zero on unit circle, i.e. order k1=1,k0After a period of time, the adaptive algorithm converges to-cos ω, where ω is the normalized frequency of the signal and α determines the width of the trap, as shown in equations (3) to (10).
D(n)=λ(n)D(n-1)+2(1-λ(n))s2(n-1) (5)
C(n)=λ(n)C(n-1)+(1-λ(n))s(n-1)[s(n)+s(n-2)] (7)
Wherein,is k0(n) an estimated value of the amount of the,is thatThe smoothed value γ is 0.5, and y (n) -x (n) is the enhancement signal after the noise is removed. Since the density of the fluid of the coriolis flowmeter is reflected as the change of the frequency, the frequency of the change of the fluid signal needs to be tracked in time, and through a large number of simulation researches, it is found that the width of the trap of the trap is properly increased by adjusting the final values of ρ and λ, and the tracking of the frequency change can be realized while the accuracy is ensured, as shown in formulas (11) and (12).
ρ(n)=0.98-0.195×0.99(n-1) (11)
λ(n)=0.98-0.05×0.99(n-1) (12)
A flow chart for the adaptive lattice notching algorithm is shown in fig. 19. Note that lattice notch filtering is filtering and can obtain an enhanced signal with only a signal frequency, but since two IIR filters used for two signals change the phase in the enhanced signal, the enhanced signal is not used in the subsequent algorithm, and the adaptive lattice notch is only used for estimating the signal frequency.
The adaptive lattice notch algorithm can be used for tracking the changing frequency, the tracking speed is high, the tracking precision is high, the calculated amount of the whole algorithm is small, the time for obtaining a point frequency value through one path of adaptive lattice filtering is 10.5 mu s, and the tracking precision is superior to 0.01 percent. And the speed and the precision of the lattice tracking frequency can be adjusted by adjusting the final values of the parameters and the changing step length, so that the algorithm can be flexibly applied to sudden change and abrupt change signals, such as two-phase flow, batch flow and the like.
After the DTFT _ omega frequency value is obtained, the DTFT _ omega frequency value and 500-point signal data are transmitted to a DTFT algorithm module, and the phase difference of two paths of signals is calculated. For a steady flow signal, the data length is continuously increased from the first sampling point to calculate the Fourier coefficient at the specified frequency, and the calculation is restarted after the 4000 points, so that overflow of the numerical value is prevented. At the same time, since the DTFT converges, we only save the data of the following 2500 points in 4000 points for the following averaging process. Meanwhile, in order to improve the calculation accuracy, the negative frequency correction is performed on the obtained phase difference.
The phase difference measurement method based on the DTFT spectrum analysis ignores negative frequency components in a spectrum when calculating a phase difference. When the signal frequency is very low or the number of sampling points is small, the influence of negative frequency components is remarkably increased, so that the phase difference measurement precision of the DTFT recursive algorithm is obviously reduced, and even the phase difference cannot be measured. This is also one of the main reasons why the sliding Goertzel algorithm has a long convergence process when calculating the phase difference. For this purpose, a negative frequency-corrected DTFT recursion algorithm is used to measure the phase difference, and the derivation formula is shown in formulas (13) to (23).
s1(t)=A1cos(2πf0t+θ1) (13-1)
s2(t)=A2cos(2πf0t+θ2) (13-2)
s1(n)=A1cos(ωt+θ1) (14-1)
s2(n)=A2cos(ωt+θ2),n=0,1,...,N-1,ω=2πf0/fs (14-2)
c1=sinα1sinα2cos(α1-α3)+sinα3sinα4cos(α4-α2) (18)
c2=sinα1sinα2sin(α1-α3)-sinα3sinα4cos(α4-α2) (19)
c3=sinα1sinα2sin(α1-α3)+sinα3sinα4sin(α4-α2) (20)
c4=sinα1sinα2cos(α1-α3)-sinα3sinα4cos(α4-α2) (21)
To summarize, the calculation steps of the DTFT recursion algorithm to account for negative frequency effects are as follows:
(2) calculating s1(n) and s2(n) respectively by using DTFT recursive algorithm (shown as formula (15))The DTFT of (D) is determined to obtain tan phi 1 and tan phi 2,
(3) byN is m1 to m4, and is substituted into the formula (25) together with tan. phi. and tan. phi. to obtain the phase difference and the time difference.
(4) When the method is applied to an actual system, the DTFT recursion algorithm also has the problem of numerical value overflow along with the continuous increase of N, so that the maximum value needs to be set for the number of sampling points, all variables are cleared and recalculated after the maximum value is exceeded, and the influence caused by recalculation is small because the phase difference measurement method disclosed by the invention is fast in convergence during calculation. Experiments show that the maximum value can be converged to high precision when being set to 2000, real-time requirements can be met, and when the phase difference changes, the phase difference can be quickly tracked.
The DTFT algorithm considering negative frequency influence and the sliding Goertzal algorithm are consistent in principle, the fast calculation of the Fourier coefficient at the designated frequency is realized by continuously increasing the length of a calculation sequence, the Fourier coefficient needs to be calculated once every sampling point in consideration of the real-time requirement of the calculation of the phase difference of the Coriolis flowmeter, the calculation amount of the DTFT recursive algorithm is smaller than that of the sliding Goertzal algorithm, the DTFT algorithm can converge quickly, and the calculation precision is high.
The whole algorithm flow chart is shown in fig. 20.
To prevent the influence of the statistical variability of the data on the phase difference results, several results must be averaged. When the Coriolis flowmeter is in a small flow, signals are weak, the signal-to-noise ratio is reduced, the signal quality is poor, phase difference fluctuation obtained through DTFT calculation is large, and averaging measures must be taken so as to output a stable phase difference value.
We take the following weighted average method to look after the results:
in the formula, λ is a weighted average forgetting factor, and the magnitude is close to 1, i.e. equivalent toThe number of dots is averaged. If the lambda value is small, the average point number is small, when the phase difference changes, the response speed of the algorithm is fast, but because the average point number is small, the fluctuation overcoming capacity of the data is small, otherwise, if the lambda value is small, the average point number is increased, the fluctuation of the data can be well overcome, a stable result is output, if the flow changes suddenly, the change of the flow can be reflected by multiple points which need to be calculated, and the measurement error still can be caused, so a method for setting a threshold value is also needed to be adopted for solving the problem. And setting a phase difference mutation threshold phase _ limit, and if the fluctuation amplitude of the N phase difference values continuously calculated exceeds the phase _ limit, averaging the N phase difference values and the results calculated later, wherein the former values do not participate in averaging, thereby quickly reflecting the flow change. N is generally 5 to 10, and theoretically, the smaller the selected pair of threshold phase _ limit isThe more sensitive the small mutation is, but in practice the threshold value cannot be made too small, since the DTFT algorithm itself fluctuates within certain limits. A detailed flowchart of the averaging module is shown in fig. 21.
The performance of the coriolis mass flowmeter is influenced by the environment, wherein the influence of the temperature is more prominent, the measurement error of the mass flowmeter on the flow and the density is caused by the change of the temperature, and the temperature effect must be considered and the temperature compensation must be carried out on the mass flow in the actual high-precision application occasion.
The elastic modulus of the sensitive pipe material in the flowmeter is changed along with the change of the temperature, the temperature coefficient of the elastic modulus of the material is generally considered to be determined, and the temperature can be detected timely and digitally compensated by a computer. The material of the sensitive tube of the primary meter of the flowmeter is 316L, and the temperature coefficient is 5.41%/100 ℃ according to the data flow slope. Outputting an instantaneous flow every 2s, reading the current temperature value, and obtaining a compensation coefficient according to the temperature, wherein the calculation of the instantaneous flow and the temperature compensation are shown in the formula (4).
The system output module is a remote signal sending operation module and comprises two sub-operations, namely 4-20 mA current output operation and pulse output operation.
The basic principle of 4-20 mA current output is as follows: because 1 SPI module of 28335 has been occupied, so use inside general purpose GPIO mouth to simulate SPI time sequence and send 12 serial data to DA7513 converter, accomplish digital quantity to analog voltage volume conversion by D/A, and then through a V/I converting circuit, convert the voltage volume into 4 ~ 20mA electric current volume. Corresponding data can be written into the DA7513 according to the instantaneous flow estimation result, and the estimation voltage formula is shown as a formula (5) and a formula (6).
The PWM output function is realized by a comparison output function of one path of PWM in an ePWM module of the DSP, and the output pulse range is 10Hz-5 kHz. Since the Coriolis mass flowmeter can directly give the mass of the fluid, the number of PWM wave output pulses corresponds to the mass, the measurable flow rate range of the system is 1g/s-500g/s, 1s of output PWM pulses is required to be 1-500, namely 1 pulse represents 1g, namely the PWM pulse frequency is 1Hz-500Hz, and since the 28335PWM module can output the minimum frequency of 8.9Hz (150000000/2/128/65536), the PWM pulse frequency is enlarged by 10 times, namely 10 pulses represent 1g, and the pulse frequency is changed to 10Hz-5 kHz.
Because the instantaneous flow calculated by the algorithm is a floating point number, the values of the conversion period register and the comparison register need to be rounded, rounding can increase the value of the period register, and further can cause that one more TBCLK can be counted when one PWM pulse is output, in order to ensure that the last PWM pulse does not output more pulses, the number of the TBCLK accumulated in 1s is required to be less than the value of the comparison register, namely f is requiredPWM< PRD/2, the frequency detail segmentation is shown in FIG. 22.
In order to reduce the influence of integer truncation on the number of output PWM pulses as much as possible, an intermediate variable middle _ fre is set for accumulating the current PWM frequency value and the fraction part lost after the last frequency value is rounded, and then the middle _ fre is rounded to obtain the current output PWM frequency value, so that a PWM output function flow chart is shown in fig. 23.
The system extends to an EEPROM model number 93LC66 with the size of 256 multiplied by 16, and is used for storing measurement results, meter coefficients and other data needing to be stored in a power-down mode. Data reading, writing and controlling are carried out on the EEPROM through a multifunctional multiplexing GPIO port on the DSP to simulate a serial time sequence, the typical time for writing data is 10ms, and therefore the EEPRM is used for two occasions: firstly, the method comprises the following steps: global variable initialization used in system initialization; secondly, the method comprises the following steps: in cooperation with the keyboard, for saving parameters of the keyboard settings and result data to be saved.
After configuring the GPIO port of the EEPROM, before writing data, a control word write enable should be sent, if a fixed address data is written, the original data on the address is preferably erased, then 8-bit address and 16-bit data are appointed, the data to be stored is written, and when reading, the address also needs to be appointed. Three kinds of data need to be stored in the system: the meter coefficient K, the zero point fixed deviation phi and the accumulated flow Q to be stored. And fixed addresses are assigned to the three types of data. The key point in the process of reading and writing the EPROM is the conversion of a data format, floating point data needs to be converted into 32-bit integer data when data is written, and 32-bit integer data needs to be converted into floating point data when the data is read.
When the instrument starts to work, an instrument coefficient K and a zero point fixed deviation phi need to be set through a keyboard, two parameters need to be stored at the moment, when a program starts to run and enters an initialization stage, the two data need to be read and given to corresponding variables, then an algorithm process is started, the whole measurement process does not need to be operated by using an EEPROM (electrically erasable programmable read-only memory), whether an accumulated flow mark is stored or not is inquired after the measurement is finished, and if the mark is set, the result data needs to be written into a designated address of the EEPROM.
Some anomalies may occur during the measurement process, such as measurement results out of range, array out of bounds, data coverage, etc., in order to monitor these errors and also in order to facilitate debugging, the error module is very simple to set, a global variable is set for recording error codes, and defining some error code flags and error handling interface functions using macros, so that other modules only contain the error module, if an error occurs, the macro definition function may be called to report the error condition, and the error flag may be set, the error module is only responsible for recording error information, and the error processing also needs specific functions in each module to process.
The man-machine interface module of the system consists of an LCD and a keyboard and is used for realizing the on-site display of the measurement result of the instrument and the modification of the parameter of the instrument. The software implementation includes the sub-routine of the LCD operation and the sub-routine of the keyboard processing.
Claims (9)
1. A Coriolis mass flow transmitter based on DSP comprises an amplifying and filtering circuit, an analog-to-digital converter 1(ADC1), an analog-to-digital converter 2(ADC2), a voltage reference source, a voltage follower, a current source, a differential amplifier, an analog-to-digital converter 3(ADC3), an analog driving module, a digital signal processor DSP minimum system, an external-expansion SARAM (static random access memory), an external-expansion EEPROM (electrically erasable and programmable read only memory), a man-machine interface, 4-20 mA current output and pulse output, a power supply module and software, and is characterized in that: the analog driving module excites a vibration exciter in the Coriolis flow sensor to enable the flow tube to vibrate at the natural frequency; two magnetoelectric sensors positioned at two sides of the flow tube output two paths of sine wave signals, the two paths of sine wave signals are amplified and filtered by two paths of conditioning circuits with the same parameters, then are simultaneously sampled by two ADCs 1 and ADCs 2 with the same model, and are converted into digital quantity, and the digital quantity is sent into a DSP through two multi-channel buffer serial ports McBSP of the DSP to calculate the phase difference of the two paths of signals; the DSP adopts digital filtering to filter the signal, the adaptive lattice notch filter calculates the frequency of the signal, and then adopts a Discrete Time Fourier Transform (DTFT) algorithm considering negative frequency to calculate the phase difference; the fluid temperature influences the angular elastic modulus of the flow tube, constant current is generated to flow through the temperature sensor in the Coriolis mass flow sensor, the output voltage of the temperature sensor is amplified by the differential amplifier, sampled by the ADC3 and converted into digital quantity, and the digital quantity is sent to the DSP for carrying out temperature compensation related calculation; converting the phase difference into mass flow, adding temperature compensation, displaying the final value on a Liquid Crystal Display (LCD), and matching with 4-20 mA current output and pulse output.
2. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: after the system is powered on, on one hand, the analog driving circuit generates a driving signal to excite the vibration of the Coriolis flowmeter, on the other hand, the DSP completes the initialization of each part of the system, and then, the sampling conversion of the two paths of ADCs is started and synchronized; after the data is converted, generating interruption through GPIO; the interrupt service program transmits the conversion result to the receiving pins of the two multi-channel buffer serial ports McBSP, then starts Direct Memory Access (DMA) transmission, and transmits the data on the receiving pins of the McBSP to a temporary array of an internal storage space through the DMA under the condition of not disturbing the work of a CPU; when the temporary arrays are full, two DMA receiving interrupts are generated, and the interrupt service program stores the data in the two temporary arrays into two circular buffer arrays in the external SARAM; acquiring 500 points of new continuous data from the external circulation array, judging the size of the signal, if the signal is small, indicating that the driving is not stable, and continuing to wait; if the signal is greater than the set value, the algorithm module may begin to be called.
3. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: the two paths of 500 point data signals are filtered and preprocessed, noise is filtered, and signal quality is improved; then, calling an adaptive lattice type notch filter for the two paths of filtered signals to respectively estimate fundamental frequencies of the two paths of sensor signals, then averaging frequency values of the two paths of signals to obtain a signal fundamental frequency instantaneous value, averaging the frequency, setting a comparison range, and updating the frequency value if the variation amplitude of the obtained average frequency value is in the comparison range, and if the variation amplitude exceeds the comparison range, updating the frequency value, so that a stable and accurate frequency value can be obtained, and an instantaneous density value can be obtained by combining coefficients; and finally, calculating the phase difference of the two paths of signals by using a DTFT algorithm taking account of negative frequency influence, averaging the result, obtaining the time difference by combining frequency values, and further obtaining the instantaneous flow value by combining set instrument coefficients.
4. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: after the instantaneous flow value is obtained, reading a signal of the temperature sensor and converting the signal into a temperature value, obtaining a corresponding temperature compensation coefficient according to the material of the measured flowmeter, and performing temperature compensation on the instantaneous flow; generating interruption by timing 2s through a CPU timer, and accumulating instantaneous flow in an interruption service program to obtain accumulated flow; meanwhile, setting an output result flag bit; after the measurement result is obtained, on one hand, the DSP displays the measurement values of the accumulated flow, the density, the temperature and the like through the LCD; and on the other hand, corresponding 4-20 mA current and PWM pulse are output outwards through a digital-to-analog converter DAC and an ePWM module according to the obtained instantaneous flow, so that an upper computer or other secondary instruments can count.
5. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: the signals RP + and RP-are connected to the input end of the U2 in a differential mode, are amplified by an instrument amplifier U2 and then are sent to a second-order low-pass filter composed of an operational amplifier U3A, a peripheral resistor and a capacitor for filtering, and then are sent to the input end of an ADC U1 through an amplitude limiting protection circuit composed of R7 and U4; input signals RP + and RP-are connected in a differential mode through R8 and R9, R2 sets the amplification factor of U2, C2, C6, C12 and C14 are decoupling capacitors, R5, R6, R1, R12, C5 and C10 and operational amplifier U3A form a second-order low-pass filter, C3, C9, C11 and C13 are decoupling capacitors, and a capacitor C90 is used for filtering high-frequency interference generated by high-frequency switching devices in U1; u1 is differential input ADC1, signal is connected to AIN0 (pin 6), another input end AIN1 (pin 7) is connected to 2.5V reference source; the reference required by U1 is taken from an external 2.5V reference source, VREF (pin 4) is connected with 2.5V reference, and VREFN (pin 3) is grounded; the data transmission interface of U1 is connected with a clock SCLK (pin 18) connected with MCLKXA, the data input DIN (pin 17) connected with MDXA, the data output DOUT (pin 16) connected with MDRA, the chip select CS connected with MFSXA, wherein the series-connected resistors R3, R4, R10 and corresponding pins of U1 are input with parasitic capacitors to form RC low-pass filter to filter spike pulse; the control pins DRDY and SYNC are connected to the GPIO port of the DSP; the capacitors C7 and C8 are filter capacitors, and the capacitors C1, C4, C15 and C17 are decoupling capacitors.
6. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: two ADC synchronous conversion paths, after single data is converted, interruption is generated through GPIO8, a clock is provided for data received by the McBSPa port and the b port in an interruption service program, two paths of 24-bit sampling data can reach receiving registers of the McBSPa port and the b port, the high bit is received in DRR2, the low bit is in DRR1, 32-bit shaping data is stored in a receiving buffer of the McBSP, the DMA transmission function of the McBSP is adopted, the data is timely transmitted to an internal RAM without disturbing a CPU, the sampling data cannot be lost or covered, and the utilization rate of the CPU is improved.
7. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: signal preprocessing is divided into two cases: one is, for delta-sigma type ADC, because ADC itself samples with very high sampling frequency 1.92MSPS, then the inside has the processing of filtering average, so the digital quantity noise transmitted to DSP with the data output rate of 2kSPS is already lower, only need to filter out the higher component frequency with the software filtering, the simple FIR low-pass filtering can meet the requirement of the follow-up algorithm; the other is that, if data is transmitted to the DSP at a higher data output rate, an extra decimation filter is needed, i.e. to enhance the suppression of noise, the data is first transmitted to the DSP at a higher data output rate (e.g. 16kSPS), and then the extra decimation filter is used to perform anti-aliasing filtering and decimation, and generally two-stage extra decimation filtering is needed to achieve a better effect, and after decimation, the data amount is reduced, and the signal quality is improved without increasing the subsequent calculation load.
8. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: the preprocessed signals can call self-adaptive lattice notch filtering to estimate the fundamental frequency of the signals, the two sensor signals have deviation due to the inconsistency of two flow tubes of the Coriolis mass flowmeter, in order to improve the accuracy of calculating the phase difference, the two signals respectively pass through two different self-adaptive lattice notch filters to respectively estimate the frequencies of the two signals, and then a compromise frequency value obtained on average is transmitted to a later algorithm.
9. The DSP-based coriolis mass flow transmitter of claim 1 characterized in that: in an actual system, along with the continuous increase of the number N of sampling points, the DTFT recursion algorithm also has the problem of numerical value overflow, so that the maximum value needs to be set for the number of the sampling points, all variables are cleared and recalculated after exceeding the maximum value, and the phase difference measurement method disclosed by the invention has the advantages that the convergence is fast during calculation, so the influence caused by recalculation is small; experiments show that when the maximum value is set to 4000, the method can be converged to high precision, can meet real-time requirements, and can be quickly tracked when the phase difference changes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101855608A CN101706299B (en) | 2009-11-20 | 2009-11-20 | Coriolis mass flow transmitter based on DSP |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101855608A CN101706299B (en) | 2009-11-20 | 2009-11-20 | Coriolis mass flow transmitter based on DSP |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101706299A true CN101706299A (en) | 2010-05-12 |
CN101706299B CN101706299B (en) | 2011-03-30 |
Family
ID=42376536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101855608A Active CN101706299B (en) | 2009-11-20 | 2009-11-20 | Coriolis mass flow transmitter based on DSP |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101706299B (en) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101881947A (en) * | 2010-05-26 | 2010-11-10 | 北京航空航天大学 | All-digital closed-loop system of Coriolis mass flowmeter |
CN103245386A (en) * | 2013-04-10 | 2013-08-14 | 温州新蓝科技有限公司 | Coriolis flowmeter and information processing technology thereof |
CN103528634A (en) * | 2013-10-23 | 2014-01-22 | 山东大学 | Coriolis mass flow meter cloud transmission digital signal processing device and method |
WO2014067059A1 (en) * | 2012-10-30 | 2014-05-08 | 西安东风机电有限公司 | Digital drive method and system of coriolis flow meter |
WO2014110724A1 (en) * | 2013-01-16 | 2014-07-24 | Nestec S.A. | Vibration monitoring system for a liquid food producing apparatus |
CN104011511A (en) * | 2011-12-23 | 2014-08-27 | 大陆汽车有限责任公司 | Sensor system |
CN104019850A (en) * | 2013-03-02 | 2014-09-03 | 山西太钢不锈钢股份有限公司 | Method for measuring volume flow rate of fluid |
CN105203169A (en) * | 2014-06-26 | 2015-12-30 | 微动公司 | Transmitter and method for transmitting sensor signals in transmitter |
CN105865555A (en) * | 2016-05-24 | 2016-08-17 | 合肥工业大学 | High temperature-resisting simulation driving circuit for Coriolis mass flow meter |
CN106525267A (en) * | 2016-12-16 | 2017-03-22 | 山东金洲科瑞节能科技有限公司 | Bus type temperature measuring device |
CN107084770A (en) * | 2016-02-14 | 2017-08-22 | 高准有限公司 | Signal pickup circuit, transmitter, the method for flowmeter and pickoff signals |
CN107102586A (en) * | 2017-05-24 | 2017-08-29 | 西北工业大学 | A kind of coriolis mass flowmeters amplitude control method |
CN107806909A (en) * | 2017-09-13 | 2018-03-16 | 南京农业大学 | A kind of impulse type cereal flow transducer signal acquisition and processing apparatus |
CN110709676A (en) * | 2017-06-02 | 2020-01-17 | 恩德斯+豪斯流量技术股份有限公司 | Sensor for measuring the mass flow of a flowable medium |
CN111006731A (en) * | 2019-12-10 | 2020-04-14 | 海默潘多拉数据科技(深圳)有限公司 | Intelligent oil well flow measuring method based on multiphase flowmeter |
CN111566457A (en) * | 2017-11-14 | 2020-08-21 | 恩德斯+豪斯流量技术股份有限公司 | Measuring device with at least one curved measuring tube for determining a measured value of the mass flow of a medium according to the coriolis principle |
CN114828370A (en) * | 2022-03-18 | 2022-07-29 | 合肥工业大学 | Self-adaptive phase difference calculation method for plasma density measurement |
CN117268512A (en) * | 2023-11-23 | 2023-12-22 | 青岛鼎信通讯科技有限公司 | Consistency optimization method suitable for ultrasonic water meter |
-
2009
- 2009-11-20 CN CN2009101855608A patent/CN101706299B/en active Active
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101881947A (en) * | 2010-05-26 | 2010-11-10 | 北京航空航天大学 | All-digital closed-loop system of Coriolis mass flowmeter |
US9541434B2 (en) | 2011-12-23 | 2017-01-10 | Continental Automotive Gmbh | Sensor system |
CN104011511A (en) * | 2011-12-23 | 2014-08-27 | 大陆汽车有限责任公司 | Sensor system |
WO2014067059A1 (en) * | 2012-10-30 | 2014-05-08 | 西安东风机电有限公司 | Digital drive method and system of coriolis flow meter |
CN104040301A (en) * | 2012-10-30 | 2014-09-10 | 西安东风机电有限公司 | Digital drive method and system of coriolis flow meter |
WO2014110724A1 (en) * | 2013-01-16 | 2014-07-24 | Nestec S.A. | Vibration monitoring system for a liquid food producing apparatus |
CN104019850A (en) * | 2013-03-02 | 2014-09-03 | 山西太钢不锈钢股份有限公司 | Method for measuring volume flow rate of fluid |
CN103245386A (en) * | 2013-04-10 | 2013-08-14 | 温州新蓝科技有限公司 | Coriolis flowmeter and information processing technology thereof |
CN103528634A (en) * | 2013-10-23 | 2014-01-22 | 山东大学 | Coriolis mass flow meter cloud transmission digital signal processing device and method |
CN105203169A (en) * | 2014-06-26 | 2015-12-30 | 微动公司 | Transmitter and method for transmitting sensor signals in transmitter |
CN107084770A (en) * | 2016-02-14 | 2017-08-22 | 高准有限公司 | Signal pickup circuit, transmitter, the method for flowmeter and pickoff signals |
CN105865555A (en) * | 2016-05-24 | 2016-08-17 | 合肥工业大学 | High temperature-resisting simulation driving circuit for Coriolis mass flow meter |
CN105865555B (en) * | 2016-05-24 | 2018-08-24 | 合肥工业大学 | A kind of high temperature resistance analog drive circuit of Coriolis mass flowmeter |
CN106525267A (en) * | 2016-12-16 | 2017-03-22 | 山东金洲科瑞节能科技有限公司 | Bus type temperature measuring device |
CN107102586A (en) * | 2017-05-24 | 2017-08-29 | 西北工业大学 | A kind of coriolis mass flowmeters amplitude control method |
CN110709676A (en) * | 2017-06-02 | 2020-01-17 | 恩德斯+豪斯流量技术股份有限公司 | Sensor for measuring the mass flow of a flowable medium |
CN107806909A (en) * | 2017-09-13 | 2018-03-16 | 南京农业大学 | A kind of impulse type cereal flow transducer signal acquisition and processing apparatus |
US11378432B2 (en) | 2017-11-14 | 2022-07-05 | Endress+Hauser Flowtec Ag | Measuring device having at least one bent measuring tube for determining a mass flow measured value of a medium according to the Coriolis principle |
CN111566457A (en) * | 2017-11-14 | 2020-08-21 | 恩德斯+豪斯流量技术股份有限公司 | Measuring device with at least one curved measuring tube for determining a measured value of the mass flow of a medium according to the coriolis principle |
CN111566457B (en) * | 2017-11-14 | 2022-06-03 | 恩德斯+豪斯流量技术股份有限公司 | Measuring device with at least one curved measuring tube for determining a measured value of the mass flow of a medium according to the coriolis principle |
CN111006731A (en) * | 2019-12-10 | 2020-04-14 | 海默潘多拉数据科技(深圳)有限公司 | Intelligent oil well flow measuring method based on multiphase flowmeter |
CN114828370A (en) * | 2022-03-18 | 2022-07-29 | 合肥工业大学 | Self-adaptive phase difference calculation method for plasma density measurement |
CN114828370B (en) * | 2022-03-18 | 2024-04-19 | 合肥工业大学 | Self-adaptive phase difference calculation method for plasma density measurement |
CN117268512A (en) * | 2023-11-23 | 2023-12-22 | 青岛鼎信通讯科技有限公司 | Consistency optimization method suitable for ultrasonic water meter |
CN117268512B (en) * | 2023-11-23 | 2024-02-09 | 青岛鼎信通讯科技有限公司 | Consistency optimization method suitable for ultrasonic water meter |
Also Published As
Publication number | Publication date |
---|---|
CN101706299B (en) | 2011-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101706299B (en) | Coriolis mass flow transmitter based on DSP | |
CN102128656B (en) | Slightly bent Koch mass flow meter digital signal processing method and system | |
CN102506951B (en) | Method and system of digital driving following for Coriolis mass flowmeter | |
US7212943B2 (en) | Body motion detection device, pitch meter, wristwatch-type information processing device, method for controlling thereof, control program, and storage medium | |
CN104330082B (en) | A kind of MEMS/GNSS integrated navigation systems real-time data synchronization method | |
CN101476906B (en) | Anti-strong fixed interference digital signal processing system of vortex street flowmeter | |
CN108020282B (en) | Coriolis mass flowmeter signal processing method based on complex coefficient filtering | |
CN102176112B (en) | Method for achieving accurate clock timing by arranging RTC (real time clock) in MCU (micro control unit) | |
CN103528634B (en) | A kind of coriolis mass flowmeters cloud transmission digital signal processing device and method | |
JPH04505506A (en) | Virtually noise-insensitive Coriolis mass flowmeter | |
CN109579950B (en) | Mistake proofing ripples detection device of gaseous ultrasonic flowmeter | |
CN104375006B (en) | A kind of Fast synchronization phase amount correction method | |
CN1095538C (en) | Ke's mass flowmeter digital signal processing system | |
CN104501890A (en) | Control method for coriolis mass flow tube of variable sensor signal setting value | |
CN200993665Y (en) | Small digitalized prase-comparing measuring device | |
US7378854B2 (en) | Dual sine-wave time stamp method and apparatus | |
CN109005002A (en) | Sensing data processing unit, sensing system and the method for determining reduced parameter in the scope of the sensing system | |
CN106706050A (en) | Method for measuring gas flow through ultrasonic flowmeter | |
CN1230686A (en) | Digital signal processing system of vortex street flowmeter | |
CN103155476A (en) | Quantizing sampled inputs using fixed frequency analog to digital conversions through interpolation | |
CN103984873A (en) | Method for applying digital signal processing algorithm to DSP system | |
CN204679550U (en) | Electric energy accurate measuring device under a kind of fluctuating load | |
CN106370186A (en) | Rapid low-power-consumption fusion system and method for sensor | |
CN106323277A (en) | Signal collection circuit of laser gyroscope inertial navigation instrument | |
CN106643930A (en) | Improved ultrasonic flowmeter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221101 Address after: 325600 291 weft seventeen Road, Yueqing Economic Development Zone, Wenzhou, Zhejiang Patentee after: Goldcard Smart Group Co.,Ltd. Address before: Tunxi road in Baohe District of Hefei city of Anhui Province, No. 193 230009 Patentee before: Hefei University of Technology |
|
TR01 | Transfer of patent right |