ich fahre eine alte Honda-TransAlp als Reisemotorrad.
Das Mopped ist was Instrumente angeht noch recht spartanisch ausgestattet, das würde ich gerne mit einem Arduino ändern.
Ich bin aber nicht der hellste was E-Technik und Messelektronik angeht und bräuchte da noch etwas Hilfe.
Primär möchte ich als erstes meinen Tankinhalt ermitteln. (Das Mopped hat keine Tankanzeige)
Mein Plan wäre hier gewesen zwischen Tank und Vergaser ein T-Stück zu montieren und den Druck in der Leitung zu ermitteln und davon ausgehend Rückschlüsse auf den Tankinhalt zu ziehen.
Ich hab schon nach passenden Sensoren gesucht und bin auch diese hier gestoßen: NXP® Semiconductors Official Site | NXP Semiconductors
Aber ich bin nun etwas überfordert damit wirklich den Baustein zu wählen der für meine Anforderungen der richtige ist. (Tankinhalt liegt bei ca. 0-20 Litern)
Ist der Ansatz tragbar? Habt ihr nen Tipp für mich bezüglich des richtigen Bausteins?
Als nächstes würde ich gerne noch den Verbrauch ermitteln. (und somit auch auf die Restreichweite schließen)
Hier habe ich zZ. zwei Ansätze:
Den Verbrauch einfach durch den Sinkenden Füllstand ermitteln. Allerdings bringt das einige Schwierigkeiten mit sich. (reset beim Tanke etc.)
Den Durchfluss in der Spritleitung messen. Allerdings ist der Durchfluss natürlich extrem gering, daher habe ich momentan noch keine Idee mit welchen Sensoren man das am geschicktesten macht.
Weiter bin ich hier noch nicht.
Hinterher werde ich sicher noch viele andere Daten Erfassen und verarbeiten wollen. Aber eins nach dem anderen, Die Spritanzeige ist mir wirklich ein Anliegen.
ich glaube da hast du dir ein recht unpassendes Anwendungsgebiet ausgesucht.
Füllstand über Druck:
Wie du bereits sagtest, ist der Durchfluss zum Vergaser minimal. Das wird mit einem Drucksensor so nicht realisierbar sein. Bzw. wirst du keine Momentanaufnahme des Spritverbrauchs korrekt ermitteln können. Zum einen unterschiedliche Druckverhältnisse je nach Fahrweise (Kurvenlage, Berg Auf- und Abfahrt ...).
Alternativ wäre es vielleich sinnvoller mit einem Schwimmer zu arbeiten, der an einem Potentiometer angeschlossen ist. Diesen müsstest du dann aber zwingend kalibrieren, da ich nicht davon ausgehe, das dein Tank zylindrisch o.ä. ist. Hierbei wirst du um einen Eigenbau nicht herumkommen. Bei dieser Variante hättest du wieder das Problem mit den Lage des Motorrads.
Eine andere Alternative hast du ja bereits genannt mit dem Durchflusssensor. Die Frage ist, jedoch, ob der Druck aus dem Tank bzw. aus dem Vergaser reicht, um das Flügelrad des Durchflusssensers zum rotieren zu bringen. Bei einem einfachen Durchflusssensor mit einem Flügelrad im inneren würde das auslesen mit einem Impuls erfolgen. x-Impulse => y-Liter. Vielleicht sogar die beste Alternative. Zumal du hier relativ spannungsunabhängig arbeiten kannst. Andere Verfahren haben vermutlich, da sie hauptsächlich in Industrieanlagen verbaut werden, feste Spannungsbereiche, die du ohne weiteres nicht von dem Motorrad abgreifen kannst.
Bei dem Impulszähler wird lediglich ein Signal immer wieder kurz auf HIGH gesetzt. Somit kannst du die Spannung des Arduino nutzen und entsprechend dann die 5V am Ausgang auswerten.
Das gleiche Verfahren kannst du nun auch anwenden um ein Tachosignal zu erfassen mit einem Impulszähler.
Jedoch würde ich mich auf eine Variante nicht beschränken! Nehme den Impulszähler hauptsächlich zum erfassen des Spritverbrauchs. Mit einem Schwimmerschalter würde ich immer noch den Tankinhalt messen. Hierbei aber evtl. einen Gyro(heißt das so?) einsetzen, um zu erfahren, ob sich das Motorrad gerade in der waagerechten befindet.
Wenn Gyro min 10 Sekunden sich in der waagerechten befindet, Schwimmschalter auswerten
Einen Schwimmer mit Drehwiderstand in den Tank einbauen finde ich explosiv!! (nicht als Kraftausdruck gemeint sondern als Knalleffekt bei Entzünden der Gase im Tank). Außerdem wie willst Du Benzindicht den Kabel nach außen führen?
Grüße Uwe
Leider hat du bei Vergasermotoren keine Möglichkeit den Benzinverbrauch zu messen. Die üblichen Durchflusszähler fangen erst bei 5l/Stunde an, das reicht nicht. Bei moderneren Einspritzmotoren weiß die Motorelektronik sowieso wieviel mm³ Sprit pro Einspritzung eingespritzt werden und kennt daher auch den Momentanverbrauch. Dieser wird meist auch über Datenbus nach aussen zur Verfügung gestellt.
Bei dir sieht die Sache anders aus:
Das einzige was du wirklich versuchen kannst zu messen, ist der Füllstand des Tankes.
Deine Idee mit dem Druck ist interessant! Das könnte wohl funktionieren, aber nur, wenn du geradeaus fährst.
Stell die vor, du hast eine kurvige Strecke. Bei jeder Kurve erhöht die Fliehkraft den Druck. Was dazu führt, dass du mehr Tankinhalt vorgegaukelt bekommst. Klar kann man hier viel über Filterung machen, denn der Bezinstand im Tank sollte sich ja sehr langsam ändern. Aber bei Strecken mit vielen Kurven wirst du Fehler bekommen.
Weniger kritisch sehe ich den Einfluß von Bremsen / Beschleunigen bzw. Bergauf und -ab. Diese Einflüsse sollten sich längerfristig kompensieren.
Die nichtlinearität des Tankvolumens kann der Arduino problemlos rausrechnen, du mußt halt einmal die Tankkennlinie ermitteln. Aber ich fürchte, deine Sensoren sind nicht Benzinfest. Da mußt du entweder einen anderen Sensor finden, oder irgendeine Druckdose dazwischen setzen, damit der Sensor trocken bleibt.
Alles in allem sehe ich die Probleme hier nicht so sehr in der direkten Technik, sonder mehr darin, ein Filter- und Messverfahren zu entwickeln, das alle störenden Einflüsse währen der Fahrt eliminiert und brauchbare Ergebnisse liefert.
MadBlue:
2. Den Durchfluss in der Spritleitung messen. Allerdings ist der Durchfluss natürlich extrem gering, daher habe ich momentan noch keine Idee mit welchen Sensoren man das am geschicktesten macht.
Die Frage ist: Wie hoch ist der minimale Durchfluss?
Oder anders herum gefragt: Wieviel Benzin wird In einer Stunde Leerlauf verbraucht?
Wieviel Benzin wird im Durchschnittlich auf 100 km verbraucht?
Die laut Datenblatt minimale Durchflussmenge 0,015 l/min entspricht 60*0,015 = 0,9 l/Stunde
Das ist der vom Hersteller garantierte Wert, ab dem der Mengenmesser losläuft.
Wenn er denn erstmal in Bewegung ist, dürfte er auch noch die halbe Durchflussmenge zählen (meine Vermutung, nicht vom Hersteller garantiert), insbesondere bei vorhandenen Vibrationen durch das Motorrad.
Das müßtest Du abklären: Braucht Dein Motorrad beim Anfahren wenigstens kurzfristig mehr als 0,9 l/Stunde, damit der Mengenmesser startet und im Leerlauf wenigstens 0,45 l/Stunde, damit er nach dem ersten losfahren nicht mehr stehenbleibt, bis der Motor wieder abgestellt wird?
Von den Daten her würde der Sensor sonst passen, Betriebsspannung von 5V wie beim Arduino wird unterstützt.
jurs:
Die laut Datenblatt minimale Durchflussmenge 0,015 l/min entspricht 60*0,015 = 0,9 l/Stunde
Die 0,015l/min erreicht er nur mit der 1mm Düse.
ich bin nun kein KFZ-Mechaniker, aber mit einer 1mm Düse im Kraftstoffzulauf hätte ein ungutes Gefühl.
Und mit der 3mm Düse hat er 0,05l/min, also 3l/h, das dürfte zu wenig sein.
Aber trotzdem danke für den Link, Jurs, den Sensor kannte ich noch nicht.
Das mit der unteren Ansprechgrenze ist etwas, was man dann ausprobieren muß: Einen Prototypen bauen, ein oder zwei Tankfüllungen lang mitlaufen lassen (ohne Anzeige, einfach die Pulse zählen und im EEPROM speichern) und dann die gemessene Spritmenge mit der getankten Vergleichen.
Ich könnte mir vorstellen, dass es ganz gut funktioniert, weil ja über die Benzinleitungen die Schwimmerkammern gefüllt werden, die (vielleicht?) eher schwallartig nachgefüllt werden.
Ich sage mal was.
Ist bei einem Vergasermotor nicht der Fall daß die Bezinpumpe mehr Benzin zum Vergaser transportiert als diese in den Motor vergast und der Rest, der zuviel ist wieder in den Tank zurückfließt? Eine Durchflußmessung ist in diesem Fall nur durch Messung des Zuflußes und des Rückflusses richtig.
Viele Grüße Uwe
uwefed:
Ist bei einem Vergasermotor nicht der Fall daß die Bezinpumpe mehr Benzin zum Vergaser transportiert als diese in den Motor vergast und der Rest, der zuviel ist wieder in den Tank zurückfließt? Eine Durchflußmessung ist in diesem Fall nur durch Messung des Zuflußes und des Rückflusses richtig.
Wir reden hier von einem alten Motorrad.
Am Anfang war die Schwerkraft.
Als es die Schwerkraft schon gab und die Motorräder erfunden wurden, gab es keine Benzinpumpen, sondern der Tank wurde höher angebracht als der Vergaser, und das Benzin ist angetrieben von der Schwerkraft aus dem Tank in den Vergaser geflossen.
Sowas kann man sich heute kaum noch vorstellen: Für irgendwas die kostenlose Schwerkraft zu nutzen, wenn doch die elektrischen Benzinpumpen auch schon erfunden wurden.
uwefed:
Ok. Hab mich als nicht-Motorradfahrer geoutet 8)
Du hast trotzdem nicht unrecht.
Meine VFR BJ 1994, also auch schon nicht mehr ganz zu jung hat auch eine Benzinpumpe, viele andere (alte) Motorräder auch. Das hängt an der Geometrie der Motorräder. Die Transalp hat original aber keine Benzinpumpe, das der Tank recht hoch liegt. Allerdings wird die Trans Alp auch gerne "Wüstentauglich" umgebaut mit größeren Tanks, für die brauchts dann eine Benzinpumpe.
Aber das sollte der schweigende Initiator des Freds ja wissen.