Hi everybody.
I am now trying to acquire Analog signals from a commercial magnetometer. This magnetometer has analog outputs and a LCD display.
I checked the value of the analog outputs with a multimeter and the value measured fits very well with the display values (less than 1% error).
However, with my arduino board I get always signals which are about 5% lower (and this error means about 4 digital steps in my case) just connected the BNC Magnetometer outputs to the arduino Analog inputs).
I have tried using the 3.3 V source as reference (because it measured 690 digital steps instead of 675) but I got even worse (lower) results.
I do not know if there could be an input resistance problem, I tried increasing it with no different results.
I attach the last program I used:
unsigned long time;
void setup() {
- Serial.begin(9600);*
- Serial.flush();*
- analogReference (DEFAULT);*
}
void loop() { - time=millis();*
- // I connect the 3.3 V source to pin A3 and use it as reference.*
- float bitref = analogRead(A3);*
- Serial.print(bitref,DEC);*
- Serial.print("\t");*
- Serial.print(time);*
- Serial.print("\t");*
- analogRead(A0);*
- delay(10);*
_ float sensorValue = analogRead(A0)*(3.3/bitref);_ - Serial.print(sensorValue,DEC);*
- Serial.print("\t");*
- analogRead(A1);*
- delay(10);*
_ sensorValue = analogRead(A1)*(3.3/bitref);_ - Serial.print(sensorValue,DEC);*
- Serial.print("\t");*
- analogRead(A2);*
- delay(10);*
_ sensorValue = analogRead(A2)*(3.3/bitref);_ - Serial.println(sensorValue,DEC);*
}
thank you in advance.