Hallo!
Etwas verzweifelt bin ich hier im Forum wegen eines Sensors. Ich möchte
die Feldstärke messen mittels Magnetfeldsensor FLC100. Da das Signal den
Sensors differenziell übertragen wird, habe ich einen ADS1115 line
receiver angehängt. Jetzt weiss ich nicht ob die Messungen hierbei
richtig sind, denn ein Gaussmeter GM-2 liefert an der selben stelle und
Ausrichtung andere Werte.
Schaltung:
FLC:
VCC -> 5V von Arduino
GND -> GND von Arduino
SYNC -> Nicht verbunden
OUT- -> A1 des ADS1115
Out+ -> A0 des ADS1115
ADS1115:
VDD -> 5V von Arduino
GND -> GND von Arduino
SCL -> SCL von Arduino
SDA -> SDA von Adruino
ADDR -> GND auf Arduino (Darf gemacht werden, ändert lediglich die i2c
Adresse)
A0 -> Out+ des FLC100
A1 -> Out- des FLC100
Code:
1 | C-Code
|
2 | #include <Wire.h>
|
3 | #include <Adafruit_ADS1015.h>
|
4 |
|
5 | Adafruit_ADS1115 ads1115(0x48);
|
6 |
|
7 | void setup(void)
|
8 | {
|
9 | Serial.begin(9600);
|
10 | ads1115.setGain(GAIN_FOUR); //GAIN FOUR: sets the output voltage to +- 1V
|
11 | ads1115.begin();
|
12 | }
|
13 |
|
14 | void loop(void)
|
15 | {
|
16 | float results, results_mV, results_uT;
|
17 |
|
18 | results = ads1115.readADC_Differential_0_1();
|
19 | results_uT = results*0.00306016; //100uT / 32'678 Bit -> 1 bit = 0.00305 uT
|
20 | Serial.print("Measurement uT: "); Serial.print(results_uT);
|
21 | Serial.print(" Bit: "); Serial.println(results);
|
22 | delay(400);
|
23 | }
|
Jetzt weiss ich nicht ob die Messwerte so stimmen und ob die Schaltung
überhaupt stimmt. Desweiteren verwirrt micht der Gain des ADS1115 sehr.
Kann mir jemand helfen?
Bitte entschuldigt, falls etwas fehlt oder nicht korrekt beschrieben
ist, dann werde ich dies schnellstmöglich ergänzen.