OK, ich habe den (oder zumindest einen Fehler) gefunden: Der Empfänger-Akku, den ich zum Testen verwendet habe, war lange nicht mehr so voll, wie ich gedacht habe.
Entsprechend konnte der Spannungsregler des Arduino keine 5,0 V mehr liefern, sondern nur noch 3,4 V. Was mir gestern gar nicht aufgefallen ist, auch die gemessene Spannung war zu hoch. Als ich den NiMH-Akku durch einen vollen 2s-LiPo ersetzt hatte, lieferte der Arduino immerhin schon mal 4,9 V und die Spannung war schon deutlich realistischer. Dabei wurde der Spannungsregler des Arduino und das GPS aber schon deutlich warm. Also GPS abgezogen und siehe da: der Arduino liefert jetzt 5,0 V und die vom Sensor angezeigte Spannung entspricht jetzt exakt der vom Multimeter angezeigten Spannung. Den Strom habe ich noch nicht wieder nachgemessen, aber der Messwert sollte sich ja analog ändern.
Also: Sorry, mein Fehler.
Aber ich möchte wetten, dass ich nicht der Einzige bin, dem so was passiert. Man muss halt immer vom DAU ausgehen...
Die ACS-Sensoren sollten dieses Problem für die Strommessungnicht haben, da sie sich ja auf die vom Arduino zur Verfügung gestellte Spannung beziehen, und sich dieser Fehler somit ausgleichen würde.
Für die Spannungsmessung mittels einfachem Spannungsteiler müssten die aber genauso betroffen sein.
Also ist das Problem, dass nicht sichergestellt ist, dass die Spannung die der Arduino liefert, seiner nominalen Spannung von 3,3 bzw. 5,0 V entspricht. Dies kann passieren, wenn die Eingangsspannung zu niedrig ist (kann vor allem passieren, wenn man einen 5V Arduino mit einem 4,8V NiMH Akku betreibt, z.B. in einem kleinen Segler) oder wenn der Spannungsregler des Arduino durch zu hohe Belastung (z.B. durch ein GPS) überfordert ist.
Wenn einem das bewusst ist, kann man es umgehen: Ich werde also die reinen Varios für meine Segler auf 3,3V Basis bauen, dann sollte es mit 4,8V NiMH-Zellen keine Problem mehr geben. (Das Problem taucht aber wieder auf, wenn man einen 1s-LiPo verwendet, z.B. in einem DLG).
Lösen ließe sich das Problem mit einer festen Spannungsreferenz, wobei die eingebaute 1,1 V Referenz meines Erachtens als direkte Referenz unpraktisch klein ist.
Deshalb hätte ich folgenden Vorschlag: Man verbindet den Spannungsausgang des Arduino über einen Vorwiderstand und eine Diode (bzw. LED) mit GND und misst die an der Diode abfallende Spannung. Diese sollte recht konstant und bekannt sein. Entsprechend erhält man einen Korrekturfaktor für die auf Grundlage der Arduino-Betriebsspannung gemessenen Werte.
Beste Grüße,
Lutz