G.1.15, 100 hz measurement example — one cdm-vw305, Rf_amp_bins(8) – Campbell Scientific CDM-VW300 Series Dynamic Vibrating-Wire Analyzer System User Manual

Page 116: As long, Amplitude, Appendix g. crbasic program library, G-24

Advertising
background image

Appendix G. CRBasic Program Library

Sample

(2,Diag(),IEEE4)

EndTable

BeginProg

'100 Hz/10msec scan rate

Scan

(10,msec,500,0)

CDM_VW300Dynamic

(CPI_ADDR,Freq(),Diag())

'Get dynamic readings

CallTable

dynamic

If TimeIntoInterval

(0,1,Sec)

Then

'Process static data only once per second

CDM_VW300Static

(CPI_ADDR,StaticFreq(),Therm(),DynStdDev())

'Get static readings

CallTable

static

EndIf

NextScan

EndProg

G.1.15 100 Hz Measurement Example — One CDM-VW305, Eight

Channels

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

'CR3000 datalogger

'CDM-VW305 vibrating-wire analyzer

'Program to read 100-Hz dynamic data from one CDM-VW305 analyzer measuring eight 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

'<<<<<<<<<<<<<<SET CPI ADDRESS HERE

Public

Freq(8)

'dynamic frequencies

Public

Diag(8)

As Long

'diagnostic code

Public

StaticFreq(8)

'Static (1Hz output) frequencies

Public

Therm(8)

'Thermistor readings

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

Public

DynStdDev(8)

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

'CDM_VW300Config instruction used below.

'

' CH1 CH2 CH3 CH4 CH5 CH6 CH7 CH8

' --- --- --- --- --- --- --- ---

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

Dim

Enable(8)

As Long

=

{ 1, 1, 1, 1, 1, 1, 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(8)

=

{ 0.002, 0.002, 0.002, 0.002, 0.002, 0.002, 0.002, 0.002}

'Low Frequency Boundary (sensor frequency should never fall below

'this value regardless of environmental changes).

Dim

F_Low(8)

=

{ 300, 300, 300, 300, 300, 300, 300, 300}

'High Frequency Boundary (sensor frequency should never exceed

'this value regardless of environmental changes).

Dim

F_High(8)

=

{ 6000, 6000, 6000, 6000, 6000, 6000, 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(8)

As Long

=

{ 0, 0, 0, 0, 0, 0, 0, 0}

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

Dim

Mult(8)

=

{ 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0}

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

Dim

Off(8)

=

{ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 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(8)

=

{ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}

Dim

SteinB(8)

=

{ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}

Dim

SteinC(8)

=

{ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}

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

Dim

RFMB(8)

As Long

=

{ 20, 20, 20, 20, 20, 20, 20, 20}

Dim

RFAB(8)

As Long

=

{ 20, 20, 20, 20, 20, 20, 20, 20}

Dim

RFLL(8)

=

{ 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0, 400.0}

G-24

Advertising