beautypg.com

G.1.14, 100 hz measurement example — one cdm-vw300, two, Rf_mean_bins(8) – Campbell Scientific CDM-VW300 Series Dynamic Vibrating-Wire Analyzer System User Manual

Page 115: As long, Mean, Bins, Appendix g. crbasic program library, G-23

background image

Appendix G. CRBasic Program Library

G.1.14 100 Hz Measurement Example — One CDM-VW300, Two

Channels

'===100Hz-1Device2Ch_3-25-13.CR3===

'CR3000 datalogger

'CDM-VW300 vibrating-wire analyzer

'Program to read 100-Hz dynamic data from one CDM-VW300 analyzer measuring two channels

'IMPORTANT -- Ensure that the CPI address coded on the following line matches the address

'reported for the attached analyzer in the DevConfig or DVWTool software.

Const

CPI_ADDR

=

1

'<<<<<<<<<<<<<

Public

Freq(2)

'dynamic frequencies

Public

Diag(2)

As Long

'diagnostic code

Public

StaticFreq(2)

'Static (1Hz output) frequencies

Public

Therm(2)

'Thermistor readings

'Standard Deviation of the dynamic readings that occurred during the latest one-second interval.

Public

DynStdDev(2)

'The following arrays are used to configure the CDM-VW300 series device. Refer to the

'CDM_VW300Config instruction used below

'

' CH1 CH2

' --- ---

'Set to true (Enabled=1, Disabled=0) only those channels which have sensors connected

Dim

Enable(2)

As Long

=

{ 1, 1}

'Specify the target/desired resonant amplitude at which the sensor will be maintained

'via excitation, given in Volts. This should be in the range 0.010 to 0.001

Dim

Max_AMP(2)

=

{ 0.002, 0.002}

'Low Frequency Boundary (sensor frequency should never fall below
'this value regardless of environmental changes)

Dim

F_Low(2)

=

{ 300, 300}

'High Frequency Boundary (sensor frequency should never exceed

'this value regardless of environmental changes)

Dim

F_High(2)

=

{ 6000, 6000}

'Output Format - Hz vs. Hz^2 :: Value of 0 – measured frequency is given in units of Hz,

'Value of 1 – measured frequency is squared and given in units of Hz^2

Dim

OutForm(2)

As Long

=

{ 0, 0}

'Multiplier (factor) to be applied to sensor output frequency

Dim

Mult(2)

=

{ 1.0, 1.0}

'Offset (shift) to be applied to sensor output frequency

Dim

Off(2)

=

{ 0.0, 0.0}

'Steinhart-Hart coefficients [A,B,C] for converting thermistor ohms to

'temperature in Celsius. Specifying zeroes for A,B,C results in a reading in Ohms.

Dim

SteinA(2)

=

{ 0.0, 0.0}

Dim

SteinB(2)

=

{ 0.0, 0.0}

Dim

SteinC(2)

=

{ 0.0, 0.0}

'Rainflow configuration (not used in this program, but required as configuration arguments)

Dim

RFMB(2)

As Long

=

{ 20, 20}

Dim

RFAB(2)

As Long

=

{ 20, 20}

Dim

RFLL(2)

=

{ 400.0, 400.0}

Dim

RFHL(2)

=

{4000.0,4000.0}

Dim

RFHY(2)

=

{ 0.005, 0.005}

Dim

RFOF(2)

As Long

=

{ 100, 100}

'Configure the CDM-VW300 series device. Use the variable arrays declared above.

CDM_VW300Config

(0,CPI_ADDR,0,Enable(),Max_AMP(),F_Low(),F_High(), _

OutForm(),Mult(),Off(), SteinA(),SteinB(),SteinC(), _

RFMB(),RFAB(),RFLL(),RFHL(),RFHY(),RFOF())

DataTable

(static,true,-1)

'Static Frequency reading (1Hz output)

Sample

(2,StaticFreq(),IEEE4)

'Thermistor reading : Ohms or DegC

Sample

(2,Therm(),IEEE4)

'Standard Deviation of dynamic readings

'taken during the most recent second

Sample

(2,DynStdDev(),IEEE4)

EndTable

DataTable

(dynamic,true,-1)

'Dynamic Frequency (100Hz output)

Sample

(2,Freq(),IEEE4)

'Diagnostic code for the current dynamic reading

G-23