Öltemperatur (und mehr?)

  • Hallo, hab ein bisschen gebastelt, sitze schon einige Zeit dran, war dann doch komplexer, als ich am Anfang dachte.
    Letztes Jahr war ich mal bei @mattes, hab mir dabei eine Ölablassschraube mit Temperaturgeber bei ihm abgeholt, die er übrig hatte.
    Hin- und herüberlegt, wie ich das anzeigen soll, schlussendlich verarbeite ich das Signal mit einem PIC-Microcontroller
    und schick es dann per Bluetooth an ein Handy.
    Dort hab ich ein kleines Programm geschrieben, welches die Werte anzeigt.
    Heute nach vielem Programmieren und Ausprobieren das erste Mal provisorisch ans Mopped geklemmt, um zu sehen,
    ob das überhaupt vernünftig funzt.


    Sieht so aus:


    Schaltung:
    Schaltung.jpg


    Anzeige auf Handy vor Start NTV:
    Screenshot_20210410-164758.png


    und danach:
    Screenshot_20210410-165107.png


    Mal angedacht ist, dass noch der Geber eines Fahrradtachos dran könnte, dann werden auch Geschwindigkeit
    und Distanz/Trip angezeigt, eventuell Außentemperatur und Drehzahl auch noch.


    Da wäre aber noch etwas Arbeit reinzustecken.
    Ich weiß noch nicht, ob ich es erstmal so lasse und das einbaue und Verkabelung fertigmache oder
    ob ich weiter dran bastle.


    Hoffentlich verliere ich nicht die Lust, wäre nicht das erste Mal, dass ich, nachdem ich gesehen habe, dass es
    funktioniert, die Lust verloren habe, es fertig zu machen :whistling:


    Wenn ich Zeit finde, werde ich noch ein paar Details hier reinstellen, gibt aber bestimmt nicht soo
    viele, für die das interessant ist.


    Letztendlich ist es eine Spielerei, zum Fahren braucht man das nun wirklich nicht, lediglich
    Batteriespannung und Öltemperatur haben ein wenig Sinn.


    Gruß, Wolfgang

  • Bei wechselnden Außentemperaturen habe ich Widerstand gemessen und anschließend ins kochende Wasser und dann ebenfalls gemessen. Wenn man aber nur 5 s. länger braucht beim Messen, nachdem man das Teil aus dem kochenden Wasser geholt hat, ist der Widerstand schon wieder um 5% angestiegen. Die 100 Grad Marke ist insofern mit Fehler behaftet, praktisch ist das aber nicht so schlimm.
    Anschließend gerechnet und eine Tabelle in den Chip gebrannt.
    Gruß, Wolfgang

  • Könnte man nicht anhand von 2-3 Werten feststellen, was da drinnen steckt?
    Wobei ich mich frage, welche Aussagekraft die Öltemperatur in der Ölwanne ganz unten haben soll.
    Interessanter wäre ein Sensor z.B. am Ölsteigrohr (wenn vorhanden). Oder einen Korrekturfaktor drauf rechnen, so 5-10°C schätze ich.
    Trotzdem interessante Spielerei.

  • Das Ganze ist eine sehr interessante Spielerei!


    Und ohne das geistige Werk und die ganze Arbeit schmälern zu wollen, aber wenn schon befürchtet wird, dass dieses Projekt mittelfristig im Sande verläuft, dann wäre vielleicht eine Veröffentlichung aller Dateien und Fortschritte eine Überlegung. Quasi Opensource, damit jederzeit andere weitermachen oder hier für ihr Projekt Hilfe finden


    Nur so laut gedacht :)


    Grüße

  • Für die digital Interessierten hier noch Details:


    konzept.jpg


    Der PIC Microcontroller ist ein 18F2455 und läuft mit 48MHz, die serielle Schnittstelle ist über einen Pegelwandler (5v / 3.3V) mit dem BT-Modul AMB 2300 verbunden. Fest eingestellt auf 9600 Baud.


    Den PIC programmiere ich in Assembler, das ist tricky aber man hat das Timing der verschiedenen Schleifen gut im Griff.


    Die Android APP habe ich mit einem Web-Baukasten zusammengestückelt:


    http://ai2.appinventor.mit.edu


    Für APP-Neulinge der schnellste Weg, um ein Ergebnis zu erzielen.


    Den PIC habe ich gewählt, da ich eine Platine einer alten Motorsteuerung rumliegen hatte. Er hat außer der seriellen eine I2C Schnittstelle, so dass man prinzipiell die Daten auch an eine angeschlossene LCD ausgeben könnte.
    Nach der Erfahrung, die ich bisher gesammelt habe, würde ich das nächste Mal lieber einen Mini-Arduino mit eingebautem Bluetooth nehmen und in Hochsprache, z.B. C programmieren.
    Die kosten inzwischen so ab ca. 10-15€, mehr nicht.


    ismanthey: Hallo Wolfgang, ja so ein Instrument ist bei Berücksichtigung aller Dreckeffekte auch nicht schlechter in der Anzeige. Ich will genau so etwas aber nicht, weil:
    - Ich mir die Instrumententafel nicht zukleistern will mit Anzeigen, auf die ich nur selten mal schauen muss.
    Das gefällt mir einfach von der Optik her nicht und das Smartphone kann ich in die Halterung stecken oder eben nicht
    - Das keine Lösung ist, wenn mehrere Anzeigen zusammenkommen. Wird viel zu groß
    - Ich auf dem Smartphone die Anzeigen optisch alarmieren kann (ORANGER Hintergrund), wenn
    die Werte kritisch werden.
    - Ich flexibler bin, ich kann ohne Probleme noch mehr Temperaturgeber nachrüsten und anzeigen, z.B. Außentemperatur.
    - und schließlich: Spieltrieb!


    Ich gebe die Source-Files usw. auf Nachfrage gerne raus, aber das Projekt ist nicht erwachsen genug, dass ich es öffentlich stellen möchte.


    Ich lass es auch noch nicht liegen, werde noch weiter programmieren, mal sehen, wie weit ich komm...


    Jetzt wo das Wetter wieder schöner wird und meine Vorgartenwerkstatt öffnet, habe ich auch noch mehr zu tun, spreche gerade mit TÜV und Dekra zwecks Felgenumbau, aber die stellen bisher sich ziemlich quer.


    Gruß, Wolfgang

  • Hier ein paar Erläuterungen für die, die so etwas oder Teile davon nachbauen wollen:

    - Batteriespannung: Versorgungsspannung habe ich abgegriffen am hinteren Bremslichtschalter. Diese Spannung wollte ich auch messen. Sie ist aber ca. 0,3V geringer als die Batteriespannung und das ändert sich mit Sicherheit auch noch je nach Fahrzustand und eingeschalteter Verbraucher. Also habe ich die Messspannung abgenommen am Magnetschalter. Es fließen nur wenige mA. Lässt sich aber ausrechnen, dass nach 1/4 Jahr die Batterie schon halb leergesaugt wäre. Daher ist nochmal ein Relaiskontakt in Reihe, so dass erst bei eingeschalteter Zündung Messstrom fließt.

    - Geschwindigkeit: Ich habe einen Sensor eines Fahrradtachos am Hinterrad angebracht. Das ist ein Magnetschalter, den ich auf einer Seite an Masse lege. Andere Seite über zunächst 12 kOhm an plus 5V und an einen Binäreingang des PIC gelegt. Funktionierte auf Anhieb, so lange bis ich den Motor startete. Dann habe ich nur noch Phantasiewerte gemessen. Bei 1kOhm erhält man aber vernünftige Werte. Ab und zu ist ein Ausreißer dazwischen, eventuell sollte man es nochmal filtern (In HW oder SW).

    - Drehzahlpuls nehm ich an einer Zündspule ab, unterhalb der rechten Seitenverkleidung findet sich ein Steckverbinder mit dem nötigen Signal. Ich habe eine alte Elektor-Schaltung etwas angepasst und messe es analog. Geht auch digital, ich habe nur meine Timings und Interrupts im PIC etwas ungünstig gewählt und hätte Programm nochmal umstricken müssen, daher die analoge Messung.


    Soviel zu Teil 1, ein paar Kleinigkeiten ergänze ich noch später.


    Bei Interesse schreibt mir ne PN, ich will keine Romane hier in den Fred schreiben.


    Gruß, Wolfgang

  • Die Anzeige für den Gang werde ich noch programmieren. Ich habe sowohl das Neutralsignal, als auch den Kupplungshebel-Kontakt zum PIC geführt. Wenn beides nicht anliegt, dann lässt sich der aktuelle Gang aus Geschwindigkeit und Drehzahl berechnen.


    Bei den NTCs sollte man den Serienwiderstand so wählen, dass er in etwa dem Widerstand des NTC beim interessanten Temperaturbereich entspricht. Dann passt die Auflösung am besten.


    Obwohl ich es eigentlich weiß, war es doch überraschend, zu sehen, dass trotz recht hoher Außentemperatur erst nach 12 km Fahrt die Öltemperatur 60 Grad erreichte.


    Ein paar Gedanken gibt es noch zu möglichen Änderungen, dazu später mehr.


    Gruß, Wolfgang

  • Nicht daß Du denkst, Du hälst hier Selbstgespräche. Ich finde das immer noch sehr interessant, nur hab ich kein Endgerät am Lenker.

    Ein kleines LCD Display wäre Klasse, lässt sich auch bei Sonne ablesen und fest verbauen. Spannung, Öltemp und Gang würden mir komplett reichen.

    Oder willst Du die Instrumente ersetzen?

  • Moin Wolfgang, aus welchem Grund hast du eigentlich das PIC genommen und kein Raspberry Pi dafür verwendet?


    Stelle ich mir leichter vor, mit integriertem Bluetooth bzw und genügend Schnittstellen um die Signale abzugreifen. Das würde die Darstellung aufm Handy oder einem Bildschirm auch leichter machen.

    Bin gespannt auf deine Meinung dazu.


    Viele Grüße

  • Hi,


    Erposs: LCD per I2C angesteuert ist kein Problem, der PIC hat entsprechende Schnittstelle, muss man halt auswählen, was man raus zum LCD schickt.

    Tekax: Ja, die Frage ist berechtigt, war in Beitrag #11 schon gestreift, Arduino wäre für mich aus heutiger Sicht die richtige Lösung. Mit PICs hatte ich schon Erfahrung und hatte auch gerade etwas zur Hand.

    Ursprünglich war tatsächlich nur die Auswertung der Öltemperatur angedacht aber dann wurde es immer mehr 😕.


    Gruß, Wolfgang

  • Hab's jetzt einigermaßen fertig.

    Screenshot_20210828-172700.pngScreenshot_20210828-173224.pngScreenshot_20210828-171947.png

    Ganganzeige funktioniert erstaunlich gut, ab und an habe ich einen Ausreißer bei der Geschwindigkeit, dann zuckt auch der Gang.

    Außerdem scheint (selten) der Bluetooth Stream ein Zeichen auszulassen, dann gibt es eine Fehlermeldung, stört nicht sehr.

    Man könnte also noch weiterbasteln, mir reicht es aber erstmal.

    I2C Interface initialisiere ich im Programm, für eine Ansteuerung müsste ich mir aber zum Test ein LCD zulegen und anschließen. Dazu hab ich im Moment keine Lust 😉.


    Gruß, Wolfgang