In den meisten Mikrocontrollerschaltungen ist die Referenzspannung für die
AD-Wandlung die Versorgungsspannung selbst.
Wenn die Versorgungsspannung nicht stabil ist, sind die ADC-Messungen
möglicherweise
unpräzise
und
ungenau.
Wenn
jedoch
die
Referenzspannung des ADC mit der Versorgungsspannung des ACS712
übereinstimmt, gleicht der ratiometrische Ausgang des ACS712 etwaige
Fehler
bei
der
A/D-Wandlung
aufgrund
von
Schwankungen
der
Referenzspannung aus.
Der Mikrocontroller auf dem Uno R3 Board verfügt über einen 10-Bit-ADC
und arbeitet bei 5 V mit einer Referenzspannung (Vref) von 5 V für die AD-
Wandlung. In diesem Fall liest der Mikrocontroller die Werte vom ADC im
Bereich von 0 bis 1023 aus. Zur Berechnung der Ausgangsspannung in mV
aus den ADC-Rohdaten lautet die Gleichung:
Vout = (AdcRawData / 1023.0) * 5000.0
Danach verwenden wir die nächste Gleichung, um den Strom in A aus Vout
zu berechnen:
Current = (Vout - 2500) / ScaleFactor
Beachten Sie, dass sich der Wert des Skalierungsfaktors für jedes Modul,
basierend auf dessen Bereich, ändert. Die Werte des Skalierungsfaktors für
alle drei Module sind in den obigen Spezifikationen angegeben.
Bei einem Eingangsstrom von Null sollte der ACS712-Ausgang idealerweise
Vcc geteilt durch 2 sein, was einem Wert von 512 entspricht, wenn wir eine
Analog-Digital-Wandlung vom Arduino durchführen. (Für Vref = 5,0 V
beträgt die Auflösung des Arduino 10-Bit-ADC 5 V / 1024 = 4,9 mV). Ein Bit
entspricht 26 mA Strom für ACS712-05B. Der ACS712-Ausgang für Null-