Our full technical support staff does not monitor this forum. If you need assistance from a member of our staff, please submit your question from the Ask a Question page.


Log in or register to post/reply in the forum.

Programming a CR1000X with two AM16/32 multiplexers and 32 full birdge load cells


joelon Aug 24, 2018 06:52 AM

Hi, I just recieved the equipment delivered by Campbell UK and have installed it on my field site. Short Cut was not able to make a program that communicated with the second multiplexer. After changing the Pulseport and Portset channels it is now reading the second multiplexer as well.

The readings I get from the sensors connected to the second multplexer does not seem reliable though since they give  very small readings of 0.000001 mV or negative readings.

I am using the following program form my logger.

'CR1000X Series
'Created by Short Cut (4.0)

'Declare Variables and Units
Public BattV
Public PTemp_C
Public LCount
Public FullBR(16)
Public LCount_2
Public FullBR_2(16)
Public Mult(16)={25483.28014,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
Public Offs(16)={-8747.874924,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
Public Mult_2(16)={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
Public Offs_2(16)={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}

Units BattV=Volts
Units PTemp_C=Deg C
Units FullBR=mV/V
Units FullBR_2=mV/V

'Define Data Tables
DataTable(FullBR,True,-1)
DataInterval(0,15,Min,10)
Average(1,FullBR(1),FP2,False)
Average(1,FullBR(2),FP2,False)
Average(1,FullBR(3),FP2,False)
Average(1,FullBR(4),FP2,False)
Average(1,FullBR(5),FP2,False)
Average(1,FullBR(6),FP2,False)
Average(1,FullBR(7),FP2,False)
Average(1,FullBR(8),FP2,False)
Average(1,FullBR(9),FP2,False)
Average(1,FullBR(10),FP2,False)
Average(1,FullBR(11),FP2,False)
Average(1,FullBR(12),FP2,False)
Average(1,FullBR(13),FP2,False)
Average(1,FullBR(14),FP2,False)
Average(1,FullBR(15),FP2,False)
Average(1,FullBR(16),FP2,False)
Average(1,FullBR_2(1),FP2,False)
Average(1,FullBR_2(2),FP2,False)
Average(1,FullBR_2(3),FP2,False)
Average(1,FullBR_2(4),FP2,False)
Average(1,FullBR_2(5),FP2,False)
Average(1,FullBR_2(6),FP2,False)
Average(1,FullBR_2(7),FP2,False)
Average(1,FullBR_2(8),FP2,False)
Average(1,FullBR_2(9),FP2,False)
Average(1,FullBR_2(10),FP2,False)
Average(1,FullBR_2(11),FP2,False)
Average(1,FullBR_2(12),FP2,False)
Average(1,FullBR_2(13),FP2,False)
Average(1,FullBR_2(14),FP2,False)
Average(1,FullBR_2(15),FP2,False)
Average(1,FullBR_2(16),FP2,False)
EndTable

DataTable(Table2,True,-1)
DataInterval(0,60,Sec,10)
Minimum(1,BattV,FP2,False,False)
EndTable

'Main Program
BeginProg
'Main Scan
Scan(60,Sec,1,0)
'Default CR1000X Datalogger Battery Voltage measurement 'BattV'
Battery(BattV)
'Default CR1000X Datalogger Wiring Panel Temperature measurement 'PTemp_C'
PanelTemp(PTemp_C,50)
'Turn AM16/32 Multiplexer On
PortSet(C2,1)
Delay(0,150,mSec)
LCount=1
SubScan(0,uSec,16)
'Switch to next AM16/32 Multiplexer channel
PulsePort(C1,10000)
'Generic Full Bridge measurements 'FullBR()' on the AM16/32 Multiplexer
BrFull(FullBR(LCount),1,mV200,1,VX1,1,2500,True,True,500,50,Mult(LCount),Offs(LCount))
LCount=LCount+1
NextSubScan
'Turn AM16/32 Multiplexer Off
PortSet(C2,0)
Delay(0,150,mSec)
'Turn AM16/32 Multiplexer On
PortSet(C4,1)
Delay(0,150,mSec)
LCount_2=1

SubScan(0,uSec,16)
'Switch to next AM16/32 Multiplexer channel
PulsePort(C3,10000)
'Generic Full Bridge measurements 'FullBR_2()' on the AM16/32 Multiplexer
BrFull(FullBR_2(LCount_2),1,mV200,2,VX1,1,2500,True,True,500,50,Mult_2(LCount_2),Offs_2(LCount_2))
LCount_2=LCount_2+1
NextSubScan
'Turn AM16/32 Multiplexer Off
PortSet(C4,0)
Delay(0,150,mSec)
'Call Data Tables and Store Data
CallTable FullBR
CallTable Table2
NextScan
EndProg


joelon Aug 24, 2018 03:04 PM

I changed the excitation on hte second multiplexer from VX1 to VX2 and that seems to have solved the issues I was having.

Log in or register to post/reply in the forum.