Stap 1: spanning Divider
UPDATE 9/9/2014!
De Arduino kan aanvaarden tot 5v op een analoge ingang. Onze spanning kan variƫren zo hoog als 20vdc in bepaalde situaties (open circuit pv spanning), zodat we ontwierpen een voltage divider waarmee 5v bij 20v batterijspanning, en minder op verschillende lagere spanningen. Zie http://en.wikipedia.org/wiki/Voltage_divider voor meer informatie over spanning Dividers.
Eerst bezoeken we onze vriendelijke Voltage Divider Calculator. Ik 20v als de input, de 5v ingang als de uitvoer, en 10k voor R2 (experimenteren met < 10 k weerstanden tot u een waarschijnlijk paar krijgen). Hiermee wordt een R1 van 30K berekend.
R1 = 30 k ohm
R2 = 10 k ohm
Vout = (R2 / (R1 + R2)) * Vin
Vout = (10000 / (30000 + 10000)) * 20v
Vout = (10000 / 40000) * 20v
Vout =.25 * 20v
Vout = 5v
Verhouding = Vin / Vout
Verhouding = 4
Omdat de Arduino een 10-bits ADC heeft, uitgangen het 0-1023 (1024 stappen) voor een 0-5v ingang. Dat is 0.00488v / step.
Met een spanning Divider met R1 = 30 k Ohm en R2 = 10k Ohm, een 12v accu zou als volgt berekenen:
12V / verhouding = 3v op de A4-pin.
3V /.00488 = 615 (ADC Reading - ronden)
dus A4 pin spanning =.00488 * ADC lezen (615 in dit geval) of 3.00 volt.
Vervolgens accuspanning = A4 pin spanning * Ratio (3 * 4 = 12)
De code om te lezen dat waarde als volgt is:
ADCVal = analogRead(batMonPin); Lees de spanning op de scheidingslijn op pin A4
pinVoltage = ADCVal * 0.00488; Bereken de spanning op de A/D-pin
Een lezing van 1 voor de A/D = 0.00488mV
Als we de A/D-lezing te met 0.00488 dan vermenigvuldigen
We krijgen de spanning op de pin.
batteryVoltage = pinVoltage * Ratio; Gebruik die de verhouding berekend voor de spanning divider
voor het berekenen van de accuspanning, Ratio = Vin / Vout
Meer informatie op http://arduinotronics.blogspot.com/2012/04/voltage-monitor.html
UPDATE:
Verbeterde spanning lezing circuit en schets op AC Volt Meter (werkt met DC zo goed). Rock solid spanning meten, en zeer nauwkeurig.