Stap 8: Software kalibratie.
Formules afgeleid in dia's 4 en 5 in stap 1:
R2 3.245
Vadc(9.6V) = (Vbat – Vd)---= (9,6 – 0,7)---2.1803 = V
R1 + R2 (10.001 + 3.245)
Deze waarde inpluggen in digitale waarde formule:
2.1803
dVal(9.6V) =---(1023) = 446.09 ≈ 446
5
Dat is ongeveer 6 eenheden onder 452, thats waarom spanning moest gaan hoger om over te schakelen van LEDs. Voor calibratie doeleinden, zal de waarde 446 452 in de code als volgt vervangen:
De regel in de code:
if(Val<452) {//Is accuspanning onder 9.6V?
zal worden:
if(Val<446) {//Is accuspanning onder 9.6V?
Wij zullen Doe hetzelfde voor de andere spanningen ook nieuwe digitale waarde voor 12.4V:
dVal(12.4V) = 586
Dus deze lijn:
if(val<594) {//Is batterijspanning tussen 9.6V en 12.4V?
Zal worden:
if(val<586) {//Is batterijspanning tussen 9.6V en 12.4V?
dVal(13.1V) = 621
Deze regel:
if(val<629) {//Is batterijspanning tussen 12.4V en 13.1V terwijl stationair?
Zal worden:
if(val<621) {//Is batterijspanning tussen 12.4V en 13.1V terwijl stationair?
dVal(15.5V) = 742
En deze regel:
if(val<751) {//Is accuspanning boven 13.1V en onder 15.5V?
Zal worden:
if(val<742) {//Is accuspanning boven 13.1V en onder 15.5V?
Nadat we deze wijzigingen in de code heeft gedaan, zullen we moeten compileren en uploaden deze gewijzigde programma naar ATtiny 13 zoals wij op stap 4 deden. Zodra ATtiny 13 klaar is, zet het terug in de batterij monitor bestuur en re-run spanning proeven we in stap 7 om ervoor te zorgen dat wij inderdaad hebben verbeterd de prestaties van de code.
De 9.6V overgang heeft plaatsgevonden rechtsaf 9.65V, een uitstekende verbetering ten opzichte van onze vorige poging. Het verschil is slechts 0,5% op dit spanningsniveau die voldoet aan de nauwkeurigheid van de meeste DC Voltmeters. De 12.4V overgang heeft plaatsgevonden op 12.44V met een verschil van 0,3%!!
Hogere spanning overgangen zijn moeilijker te testen als gevolg van de knipperende effect. Op basis van onze resultaten zo ver deze overgangen moeten worden OK. Houd in gedachten dat deze stap nodig was, alleen omdat wij 5% weerstanden gebruikt. Vergeet niet, de waarden vermeld hier voor R1 en R2 waren degenen die ik kreeg op de twee weerstanden die ik gebruikte. Als u besluit te gebruiken 5% weerstanden, gebruikt u welke waarden u in de lezingen uit uw eigen weerstanden van 5%. Bovendien, gebaseerd op wat ik heb gelezen tot nu toe, ik denk dat meeste Arduino buffs zal graag tweaken van hun code de zelfde manier die wij hier deed. Als u om welke reden spanningsniveaus in de toekomst te veranderen wilt, weet je nu hoe dit kan worden gedaan. Deze procedure is echter niet praktisch voor productiedoeleinden. Dit is voor educatieve doeleinden, alleen.
Deze stap voltooit kalibratie en nu zijn we klaar voor het echte leven testen.