Appendix g. crbasic program library – Campbell Scientific CDM-VW300 Series Dynamic Vibrating-Wire Analyzer System User Manual
Page 99

Appendix G. CRBasic Program Library
'Shared rainflow configuration (not used, 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}
Dim
RFHL(8)
=
{4000.0,4000.0,4000.0,4000.0,4000.0,4000.0,4000.0,4000.0}
Dim
RFHY(8)
=
{ 0.005, 0.005, 0.005, 0.005, 0.005, 0.005, 0.005, 0.005}
Dim
RFOF(8)
As Long
=
{ 100, 100, 100, 100, 100, 100, 100, 100}
'Configure First Device
CDM_VW300Config
(1,CPI_ADDR1,0,Enable1(),Max_AMP1(),F_Low1(),F_High1(), _
OutForm1(),Mult1(),Off1(), SteinA1(),SteinB1(),SteinC1(), _
RFMB(),RFAB(),RFLL(),RFHL(),RFHY(),RFOF())
'Configure Second Device
CDM_VW300Config
(1,CPI_ADDR2,0,Enable2(),Max_AMP2(),F_Low2(),F_High2(), _
OutForm2(),Mult2(),Off2(), SteinA2(),SteinB2(),SteinC2(), _
RFMB(),RFAB(),RFLL(),RFHL(),RFHY(),RFOF())
'Configure Third Device
CDM_VW300Config
(1,CPI_ADDR3,0,Enable3(),Max_AMP3(),F_Low3(),F_High3(), _
OutForm3(),Mult3(),Off3(), SteinA3(),SteinB3(),SteinC3(), _
RFMB(),RFAB(),RFLL(),RFHL(),RFHY(),RFOF())
'Configure Fourth Device
CDM_VW300Config
(1,CPI_ADDR4,0,Enable4(),Max_AMP4(),F_Low4(),F_High4(), _
OutForm4(),Mult4(),Off4(), SteinA4(),SteinB4(),SteinC4(), _
RFMB(),RFAB(),RFLL(),RFHL(),RFHY(),RFOF())
'Configure Fifth Device
CDM_VW300Config
(1,CPI_ADDR5,0,Enable5(),Max_AMP5(),F_Low5(),F_High5(), _
OutForm5(),Mult5(),Off5(), SteinA5(),SteinB5(),SteinC5(), _
RFMB(),RFAB(),RFLL(),RFHL(),RFHY(),RFOF())
'Configure Sixth Device
CDM_VW300Config
(1,CPI_ADDR6,0,Enable6(),Max_AMP6(),F_Low6(),F_High6(), _
OutForm6(),Mult6(),Off6(), SteinA6(),SteinB6(),SteinC6(), _
RFMB(),RFAB(),RFLL(),RFHL(),RFHY(),RFOF())
DataTable
(static,true,-1)
Sample
(8,StaticFreq1(),IEEE4)
Sample
(8,Therm1(),IEEE4)
Sample
(8,DynStdDev1(),IEEE4)
Sample
(8,StaticFreq2(),IEEE4)
Sample
(8,Therm2(),IEEE4)
Sample
(8,DynStdDev2(),IEEE4)
Sample
(8,StaticFreq3(),IEEE4)
Sample
(8,Therm3(),IEEE4)
Sample
(8,DynStdDev3(),IEEE4)
Sample
(8,StaticFreq4(),IEEE4)
Sample
(8,Therm4(),IEEE4)
Sample
(8,DynStdDev4(),IEEE4)
Sample
(8,StaticFreq5(),IEEE4)
Sample
(8,Therm5(),IEEE4)
Sample
(8,DynStdDev5(),IEEE4)
Sample
(8,StaticFreq6(),IEEE4)
Sample
(8,Therm6(),IEEE4)
Sample
(8,DynStdDev6(),IEEE4)
EndTable
DataTable
(dynamic,true,-1)
Sample
(8,Freq1(),IEEE4)
Sample
(8,Diag1(),IEEE4)
Sample
(8,Freq2(),IEEE4)
Sample
(8,Diag2(),IEEE4)
Sample
(8,Freq3(),IEEE4)
Sample
(8,Diag3(),IEEE4)
Sample
(8,Freq4(),IEEE4)
Sample
(8,Diag4(),IEEE4)
Sample
(8,Freq5(),IEEE4)
Sample
(8,Diag5(),IEEE4)
Sample
(8,Freq6(),IEEE4)
Sample
(8,Diag6(),IEEE4)
EndTable
BeginProg
'20 Hz/50msec scan rate
Scan
(50,msec,500,0)
CDM_VW300Dynamic
(CPI_ADDR1,Freq1(),Diag1())
'Get dynamic readings
CDM_VW300Dynamic
(CPI_ADDR2,Freq2(),Diag2())
CDM_VW300Dynamic
(CPI_ADDR3,Freq3(),Diag3())
CDM_VW300Dynamic
(CPI_ADDR4,Freq4(),Diag4())
G-7