erstellt 08.11.2011 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Leistungsmesser |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Wer
hat nicht schon einmal das Gefühl gehabt das seine NC oder Blei-Akkus zu schnell
leer sind obwohl sie doch laut Typenschild eine Menge an Leistung
bringen sollen. Spätestens dann stellt man sich die Frage, ist der Akku defekt oder vielleicht schon zu alt ? Aber wie soll man überprüfen ob ein Akku seine angegebene Leistung noch hat und vor allem ob er sie auch zu Verfügung stellt ? Also bastel ich mir ein Messgerät mit dem ich die Energie die ich in einen leeren Akku reinstecke bzw. die Energie die ich aus einen vollen Akku raus ziehe auch messen kann. Das Grundprinzip sieht also folgendermaßen aus: Erst lade ich den vorhandenen AKKU voll auf, dann Entlade ich ihn über eine genau definierte Last und messe den Entladestrom (I), anhand des Ladestrom und des vorhanden Lastwiderstand berechne ich die entnommene Leistung(W). Wenn ich nun diese Leistung in Bezug zur Entladezeit setze habe ich die Energie bzw. (Wh ) die im Akku sitzt. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Das Grundprinzip |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Um
die Energiemenge eines Akkus zu bestimmen muss ich wissen wie lange
ein bestimmter Strom bei einer bestimmten Spannung in meinen Akku fließt wenn ich ihn auflade oder eben entlade. Also ist zu einem die Zeit und zum anderen der Strom und die Spannung ein Kriterium über welche ich die Energiemenge bestimmen kann. Wenn beispielsweise eine Autobatterie (12V) mit einem Strom von 1 Ampere und einer Spannung von 14 Volt geladen wird, dann lade ich mit einer Leistung von 168 Watt. Wenn ich nun diese Leistung über 1 Sekunde beibehalte dann beinhaltet meine Batterie eine Energie von 168 Ws. Da je nach Akku und Ladegerät der Strom und auch die Spannung aber nicht während der gesamten Messung gleich bleibt, müssen eine Vielzahl von Messungen durchgeführt werden und daraus der Mittelwert ermittelt werden. Den Strom kann ich indirekt mit einen sogenannten Shunt messen, so nennt man Widerstände die meist über einen sehr geringen Widerstandswert verfügen und im Verbraucherkreis liegen und nur zu Messzwecke benutzt werden. Shunt kommt aus dem Englischen und bedeutet soviel wie Neben oder Parallelwiderstand . Es gibt auch noch andere Möglichkeiten den Strom zu messen , allerdings ist es mit einem Shunt am preisgünstigsten. Die Strommessung über einen Shunt hat aber den Nachteil das zu einem der Verbraucher-Stromkreis durch eben diesen zusätzlich beeinflusst wird und zum anderen durch diesen Shunt der gesamte Strom fließt, und dadurch unnötig Leistung verbraucht wird, die in Form von Wärme abgegeben werden muss. Sprich der Shunt wird unter Umständen heiß. Als nächstes muss ich also auch die Spannung der Batterie messen ( im Plan ADC1) da aber bei der Spannungsmessung auch die Spannung die am Shunt abfällt mitgemessen wird und so mein Messergebnis verfälscht wird später im Programm die am Shunt gemessene Spannung von der gesamt Spannung abgezogen, so das ich nur noch die reine Spannung der Batterie in meine Leistungsmessung einfließt. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Der
Atmega 32 besitzt mehrere Analogeingänge an den man Spannungen
messen kann, eigentlich werden die Spannungen nicht gemessen sondern mit einer Referenzspannung verglichen,dazu wird die im Lade/Entlade-Stromkreis am Shunt abfallende Spannung dem Atmega an einen seiner Analogeingänge (ADC0)zugeführt. Diese am Shunt abfallende Spannung darf bis zu max. 5 Volt sein und wird je nach Konfiguration mit einer genauigkeit von 10 Bit abgetastet. Vorausgesetzt wir benutzen eine Referenzspannung von 5 Volt sind wir somit in der Lage bei 10 Bit das sind 1023 Spannungsbereiche (5Volt/ 1023=4,88 mV) die Eingangsspannung in 4,88mV Schritte wahrzunehmen. Über die gemessene Spannung und den Wert des vorhandenen Widerstand kann ich mit dem Atmega den Strom errechnen der im Lade-Entladekreis fließt. Nun benötigen wir noch die an der Batterie anliegende Spannung , die mit dem Analogeingang ADC1 gemessen wird. Mit diesen Werten , also Strom und Spannung kann ich nun die Leistung berechnen die beim Ladevorgang in meinen Akku fließt. Um aber eine Aussagekraft über die im Akku enthaltene Energie zu erhalten benötigen wir noch die Zeit in der der Lade-Entlade vorgang statfindet. Dafür benötige ich noch eine Zeitvorgabe , mit Timer 1 wird also ein Sekundentakt erzeugt, um damit im Programm jede Sekunde die Leistung zu addieren. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Wie ermittel ich also den Widerstand (Shunt) ? |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fall 1 Um den Widerstand zu ermitteln , durch den mein Ladestrom fließen soll überlege ich mir erst einmal wie groß der maximale Strom sein soll den ich zu messen beabsichtige. Wenn ich einmal von maximal 3 Ampere Ladestrom ausgehe um auch noch die Leistung beim laden einer Auto Batterie im überschaulichen Zeitrahmen zu Messen und der Atmega maximal 5 Volt messen kann , ergibt sich ein Widerstand von R=U/I (5/3)= 1,6 Ohm. Dafür brauchen wir aber nicht nur einen Widerstand mit einer Leistung von P=U*I(5*3) =15 Watt sondern wir verbraten auch diese 15 Watt völlig sinnlos, also muss ein anderes Konzept her, ich versuche es mit einer kleineren Referenzspannung die der Atmega intern zu Verfügung stellt, und nur per Anweisung aktiviert werden muss. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fall 2 Die interne Referenzspannung beträgt 2,56 Volt, wie also sieht die Rechnung damit aus? R=U/I(2,56/3) = 0,85 Ohm Wir brauchen also einen Shunt von 0,85 Ohm und einer Leistung von P=U*I(2,56*3) das sind immer noch 7,68 Watt. Somit ist es mir immer noch zu viel um diese 7,68 Watt als Wärme so verpuffen zu lassen |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fall 3 Um die Verlustleistung des Shunt zu verringern muss also mit eine kleinere Referenzspannung gearbeitete werden. Nachdem ich mit zwei Dioden eine Referenzspannung von 1,66 Volt erzeugt habe und eine Shunt von 0,22 Ohm eingesetzt habe ergibt sich dann folgende Rechnung: P=U*I (1,66*3) ist gleich 4,98Watt Da mein eingesetzter 0,22 Ohm Widerstand eine Verlustleistung von 5 Watt hat, kann ich damit bis zu 3 Ampere messen. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Wie genau misst denn nun mein Leistungsmesser |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
zu Fall 1 Referenz 5 Volt /1023 Schritte = 4,8 mV I = U/R = 4,8 mV /0,22 Ohm = 21mA Schritte |
Verlustleistung P=U*I 5 Volt * 3 Ampere = 15 Watt |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
zu Fall 2 Referenz 2,56 Volt /1023 Schritte = 2,5 mV I=U/R = 2,5 mV / 0,22 Ohm = 11 mA Schritte |
Verlustleistung P= U*I 2,56 Volt * 3 Ampere = 7,68 Watt |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
zu Fall 3
Referenz 1,66 Volt / 1023 Schritte = 1,6 mV
I=U/R = 1,6mV /0,22Ohm = 7,2 mA Schritte |
Verlustleistung P=U*I 1,66 Volt * 3 Ampere = 4,98 Watt |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Funktion
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Zunächst
wird als erstes aus dem aktuellen Digitalwert ( ADC0)
der im Shunt fließende Strom wie folgt errechnet: 1023 Bit entsprechen 1,66 Volt Referenzspannung - dann entspricht 1 Bit einer Spannung von 1,6mV-1,6 mV an einem Widerstand von 0,22 Ohm ergeben 7,37mA Damit hab ich pro Bit einen Strom von 7,37mA Weil der Mikrokontroller aber nicht mit Kommazahlen rechnen kann ,er müsste ja rechnen Aktuelle Digitalwert mal 7,37 so nehme ich den Stromwert 7,37 erst einmal mal 100 sind also 737. und teile dann später das Ergebnis wieder durch Hundert. Beispiel: Digitalwert ist 50 Dann rechne ich 50*737=36850 Dann das Ergebnis 36850/100= 368,5 mA damit habe ich das Ergebnis in mA um das Ergebnis aber in Ampere angezeigt zu bekommen muss ich noch einmal durch 1000 teilen (1000mA=1A).# Also sieht die ganze Rechnung so aus: Strom =ADC0 * 773 Strom =Strom/100000 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Als nächstes wird die am Akkus liegende Spannung erfasst |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Spannung: U=R*I U=0,22*Strom |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Die Leistung berechnet sich wie folgt: P=U*I P=Soannung * Strom |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Da sich
der Strom und damit die Spannung und auch die Leistung über den
gesammten lade-Entladezeitraum nicht statisch verhält also sich je
meist stetig ändert, müssen wir einen Durschnittswert errechnen indem zu jeder Sekunde der messwert neu erfasst wird und jeweils mit dem alten wert ein Mittelwert gebildet wird. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Mit Timer 1 wird ein Sekundentakt genereiert, Nach jeder Sekunde wird in die Unterroutine "Routine_sekundentakt"
gesprungen dort wird der Messwert zu jeder Sekunde mit dem alten Messwert addiert und das Ergebnis durch 2 geteilt somit haben wir als Messwert2 immwe dwn Durschnittswert. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Das Programm |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fragen, Anrgegungen , Kritik bitte hier |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Copyright by Ms2009 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
letzte Aktualisierung 12.02.2019 |