Hallo Forum, ich bin neu hier und auch in der Materie für Microcontroller bin ich neu. Habe hier im Forum ziemlich lange rumgestöbert, bin aber nicht wirklich fündig geworden. Auch habe ich wiederholt gelesen, daß Newbies ziemlich harsch behandelt werden. Seis drum, ich poste mal meine Frage in der Hoffnung ein paar Inspirationen zu erhalten. Irgendwie muss ich ja mal anfangen, oder? Thema: Ich möchte für mein Auto eine LCD Anzeige einbauen, die verschiedene Meßwerte anzeigt. Die wichtigsten Werte wären Öltemperatur und Öldruck, sowie Ladedruck des Turboladers. Da ich keinen Platz für Zusatzinstrumente habe, kam ich auf die Idee mit der LCD-Anzeige. Wenn ich das wenige, was ich bislang verstanden habe richtig interpretiere, benötige ich einen Microcontroller (AT90S4433 von Atmel??) an den ich die Ausgangssignale der Signalgeber (linear 10-18 Ohm, VDO) übergebe. Der Atmel "verwurstelt" mir das dann und gibt die Info an das LCD aus? Nochmals, bin absoluter Newbie und trau mich fast nicht, hier eine Frage zu stellen. Kann mir vielleicht jemand ein paar Tipps geben? Viele Grüße, Markus
:
Gesperrt durch Moderator
@ Markus (Gast) >Hallo Forum, Hallo Markus, >Auch habe ich wiederholt gelesen, daß Newbies ziemlich harsch behandelt >werden. Naja, manchmal hat das auch seinen Grund. >Thema: Ich möchte für mein Auto eine LCD Anzeige einbauen, die >verschiedene Meßwerte anzeigt. Die wichtigsten Werte wären Öltemperatur >und Öldruck, sowie Ladedruck des Turboladers. Ahhhhhh, willst du das wirklich? >Da ich keinen Platz für Zusatzinstrumente habe, kam ich auf die Idee mit >der LCD-Anzeige. Wenn ich das wenige, was ich bislang verstanden habe >richtig interpretiere, benötige ich einen Microcontroller (AT90S4433 von >Atmel??) an den ich die Ausgangssignale der Signalgeber (linear 10-18 >Ohm, VDO) übergebe. Der Atmel "verwurstelt" mir das dann und gibt die >Info an das LCD aus? Pi mal Dauem stimmt das. >Nochmals, bin absoluter Newbie und trau mich fast nicht, hier eine Frage >zu stellen. >Kann mir vielleicht jemand ein paar Tipps geben? Fang klein an. Arbeite das Tutorial durch, KOMPLETT!! AVR-Tutorial AVR-GCC-Tutorial Nimm ein paar MEGA8, ein LCD, ein paar Poti und fang langsam an. Wenn du dann in ein paar Monaten halbwegs den Durchblick hast, kannst du die Sache im Auto angehen. Bascom AVR ist zum Einstieg auch sehr gut. MfG Falk
> Die wichtigsten Werte wären Öltemperatur > und Öldruck, sowie Ladedruck des Turboladers. Hast du schon eine Ahnung bzw. recherchiert, um welche Geber es sich hier handelt, welche Daten dort rauskommen und wie man die ohne Gefahr für den Motor anzapfen darf?
Hi Stefan, klar hab ich das recherchiert :-) Es sind Standardgeber von VDO, die natürlich erst noch am Motor eingebaut werden müssen. Für diese Geber (linear, 10-180 Ohm) gibt es natürlich die Standardanzeigeinstrumente, was ich ja umgehen will. Also ich denke mal, es sind alles analoge Eingangssignale. Infos findest du unter:http://www.ezt-autoteile.de/index.php?cat=c10085_VDO-Sensoren-Zubeh-r.html Ich hab mal begonnen, das Tutorial zu lesen, wie von Falk angeraten. >>Oje, oje...sieht alles sehr kompliziert aus...und ich wollte nur eine LCD-Anzeige haben :-) Grüße, Markus
Hallo Falk, danke für deine Antwort. Habe mal begonnen, das Tutorial zu lesen. Sieht alles recht lernintensiv aus! Will ja kein Mikrocontrollerexperte werden :-) Werd mal weiter lesen, ob sich der Aufwand rechtfertigt, ich will ja "nur" eine LCD-Anzeige, anstatt der Standard-Einabuinstrumente. Gruß, Markus
@ Markus (Gast) >Werd mal weiter lesen, ob sich der Aufwand rechtfertigt, ich will ja >"nur" eine LCD-Anzeige, anstatt der Standard-Einabuinstrumente. Dann nimm Bascom AVR, dann musst du dich nicht um alle Details kümmern. MFG Falk
>Sieht alles recht lernintensiv aus!
Das ist es. Wenn Du wirklich nur eine Anzeige bauen willst und sonst
nichts mit uC am Hut hast, lohnt sich der Aufwand keinesfalls. Da bist
Du sehr lange Zeit beschäftigt.
Such Dir lieber jemanden, der das schon kann und Dir was bastelt.
Markus wrote: > Werd mal weiter lesen, ob sich der Aufwand rechtfertigt, ja =) > ich will ja > "nur" eine LCD-Anzeige, anstatt der Standard-Einabuinstrumente. "nur" is hier schon ganz richtig. was du vorhast, ist gar nicht ohne. > alles recht lernintensiv aus! Will ja kein Mikrocontrollerexperte werden dazu musst dann assembler (nahe zur maschinensprache) lernen =) tipp für das betreiben von elektronik im auto: http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.23
> Auch habe ich wiederholt gelesen, daß Newbies ziemlich harsch behandelt > werden. Das ist nur so wenn Regeln missachtet werde.
Naja du willst "nur" ein Display ansteuern, dazu musst du erstens ein Display mal ansprechen können was in den Meisten Tutorials relativ weit unten ist und das aus gutem Grund, weil du meistens ALLES vorher dazu verstehen muss, Assembler musst du zwar nicht lernen, Aber nachdem du wie erklärt NULL Plan von Microcontrollern hast, versuchs mal mit einlernen, dann kannst du das Projekt nochmal in einem Halben jahr angehen... Ich vermute mal das du zurzeit die Vorstellung hast.: aber wie gesagt is ne vermutung "MeasureLadeDruck" "DisplayNiceOnDisplay" "BlinkSomeEffects" "GibMirMehrAufMerksamkeitFürMeineFreundeAnDerTankeWeilMeinAutoAllesIst" Aber vl. kann ich dir sogar helfen WENN du mir sagst was für Analogsignale du für Öldruck, Öltemperatur und Ladedruck bekommst, und vor allem um welches Auto handelt es sich, ich hab sowas schonmal gebaut. Hast du eigentlich schonmal über die Analoge Seite nachgedacht? so Signalaufbereitung & Versorgung des Microcontrollers? Als alternative es gibt von Greddy und Apexi glaub ich das ein oder andere Recht günstige Anzeigeprodukt was dir DEUTLICH weniger zeit & planlosigkeit in anspruch nehmen wird und von den Kosten ( Platine, Bauteile, verheitzte Bauteile ) in etwa gleich sein wird. lg
Das Thema gab's hier schon (mehrmals) und es ist tot: Beitrag "Re: Eagle 3D Darstellung" Fertig gibt's so was aber auch schon mehrfach. z. B. http://www.blafusel.de/misc/obd2lcd_c.html
Jankey wrote: > Ich vermute mal das du zurzeit die Vorstellung hast.: aber wie gesagt > is ne vermutung > "GibMirMehrAufMerksamkeitFürMeineFreundeAnDerTankeWeilMeinAutoAllesIst" fully ack. "ey alter hab isch gehört dem meikrocontrollur is tight!" meistens erkennt man sie auch an der rechtschreibung =)
@Jankey Meine Vorstellung ist ein wenig anders: Zeige 3 Werte von analogen Eingangssignalen (linear, 0-180 Ohm, 12VDC) auf einem LCD-Display an. "BlinkSomeEffects": nicht erwünscht "GibMirMehrAufMerksamkeitFürMeineFreundeAnDerTankeWeilMeinAutoAllesIst": nicht erwünscht Da alle von einer Einarbeitungszeit von mehreren Monaten sprechen, um simple Analogsignale auf ein LCD-Display auszugeben, ist das Verhältnis von Aufwand zum Nutzen weitestgehend uninteressant. Ein einfacher Nano-ITX PC mit analoger Eingangskarte und kleinem 4"-TFT erscheint mir von daher eine bessere Lösung, damit kenne ich mich zumindest aus; auch in der Programmierung der erforderlichen Software. Preislich hält sich das Ganze auch im Rahmen, da keine Verluste durch Fehlkäufe, etc. zu kalkulieren sind. Es ging mir lediglich darum, die eingehenden Gebersignale nicht auf 3 analogen Rundindstrumenten anzuzeigen, sondern dezent auf einem kleinen LCD-DIsplay. @Florian Die von dir angesprochenen Beiträge drehen sich allesamt um das Thema KFZ-Bordcomputer". Darum geht es mir nicht, einen BC habe ich ja. Mein BC stellt die angeforderten Geberwerte (VDO linear, 0-180 Ohm, 12VDC) für Öldruck, Öltemperatur und Ladedruck nicht zur Verfügung, weshalb ich externe Geber einbauen muss. Diese Gebersignale sind dann entweder auf analogen Instrumenten (was ich nicht will), oder eben auf dem angesprochenen LCD anzuzeigen. Mein Fahrzeug ist ein BMW 530D E39 Bj. 2001, was allerdings nicht weiter entscheident ist, da die Geber im Original eh nicht vorhanden sind. Grüße, Markus
>Die von dir angesprochenen Beiträge... Dann hast Du nicht richtig gelesen, was ehrlich gesagt, ganz ungünstig ist, wenn man nicht weiß, wie etwas geht. Womit wir bei >Auch habe ich wiederholt gelesen, daß Newbies ziemlich harsch behandelt werden. wären. µC zu beherrschen ist lernintensiv.
@Florian beide von dir geposteten Links befassen sich über die Signalauswertung via OBD. Das hat nichts mit dem zu tun, was ich eigentlich machen wollte. Aber ich denke, ich lass es einfach, da der Aufwand in keiner Relation steht. Trotzdem Danke für die Ratschläge. Gruß, Markus
Nanana, nicht gleich aufgeben. Bist du dir absolut sicher, dass die Sensoren nicht schon vorhanden sind und die Signale nicht über OBD ausgelesen werden können? Ist eigentlich Standard. Außerdem, wenn du schon programmieren kannst, sollte der Einstieg in die AVRs nicht sooo schwer sein. Man kann eigentlich alles mit C machen und muss nicht bis auf Assembler Ebene graben. Wenn du dir also das ITX-Dingens zutraust, klappt das mit dem µC auch. Mach dir lieber Gedanken um die analoge Signalverarbeitung. Unter (VDO linear, 0-180 Ohm, 12VDC) kann ich mir wenig orstellen.
Hi Steve, via OBD liegt ein "reservierter" Eintrag für Öltemperatur vor, allerdings ohne Daten. Öldruck und Laderdruck sind im OBD nicht greifbar. Habe zum Thema vorhandene Sensoren auch schon spezielel BMW.Foren durchforstet und befragt. ich muss leider davon ausgehen, daß die Sensoren nicht vorhanden sind. Zu den zusätzlichen Gebern kann ich im Moment noch nicht so viele Angaben machen. Hier z.b. siehst du ein paar Infos dazu: http://www.temperaturgeber.de/vdo_temperaturgeber_daten.html VDO ist der Hersteller, im KFZ-Sektor recht bekannt. Die Kennlinie für z.B. den Temperaturgeber ist: 60°C - 221,2 Ohm 90°C - 83,0 Ohm 120°C- 36,5 Ohm Ich vermute, daß die Geber von der Technik her PT-100 sind, muss ich aber rausfinden. Anders herum gesagt: Ich bekomme einen variablen Wiederstand an den Analogeingang, den ich entsprechend in "°C" oder "bar" umsetzen muss. Da die Kennlinie linear ist, ist dise Umrechnungstabelle relativ simpel. Natürlich muss ein Korrekturfaktor berücksichtigt werden, der durch Referenzmessung zu ermitteln ist. Aber das ist ja alles erst einmal nicht so wichtig. Alternativ habe ich ein ADAMS Analogeingangsmodul für 6 Kanäle, das ich via RS485 Schnittstelle an meinen PC anbinden kann. Hiermit könnte ich zumindest für die Sensoren die entsprechenden Werte abfragen. Gruß, Markus
Ok, dann sind die Sensoren eben nicht im Standard-OBD enthalten, was nicht heißt, dass es sie nicht gibt. Schau mal, ob es irgendein Progrämmchen gibt, dass das BMW Diagnoseprotokoll kennt. Dann wäre die Sache nämlich recht einfach. Bei VW klappt das zumindest einwandfrei. Die VDO Sensoren sind schon mal keine PT100, weil die einen positiven Temperaturkoeffizienten haben, also muss da noch Stromquelle/Spannungsteiler und evtl. ein Verstärker dran, sollte aber machbar sein. Wer sich einen 530D leisten kann, sollte jetzt ein paar Euros in die Hand nehmen und sich die Teile aus der AVR-Tutorial Bestellliste + ein LCD kaufen und anfangen, Spannungswerte von nem Poti auf dem LCD auszugeben. Erfolg innerhalb eines Wochenendes beinahe garantiert.
Nunja gut du brauchst.: - Power Supply Microcontroller - Analogsignalaufbereitung - Schutz deiner Analogen Eingänge von allem Möglichem was da daherkommen kann ( getoasete uC & beinahe Fahrzeugbrände kommen oft vor wenn der 7805 davor mal eine Defekte LIMA sehen muss mit 36V ) - ADC Ansprechen - Werte durch eine Lookuptable "nachlinearisieren", denn kein autohersteller benutzt einen PT100 - Werte auf was brauchbares umrechnen.: zb du hast in einem Register den gemessenen wert nun zb.: 0~255 0 steht für 0 Grad und 255 für 255 Grad damit du das in deinem Display anzeigen lassen kannst musst du viel wissen.: ein kleiner vorgeschmack bei der "vorverarbeitung" für die Anzeige: HunderterZahl = Zahl / 100 Zahl = Zahl - 100 * HunderterZahl; ZehnerZahl = Zahl / 10 Zahl = Zahl - 10 * ZehnerZahl; Einserzahl = Zahl; HunderterZahl = HunderterZahl + 48; ZehnerZahl = ZehnerZahl + 48; Einserzahl = Einserzahl + 48; und dann musst du die 3 auch noch rauschieben in einem String ... dann schauts vl. mal so aus.: http://www.jankeytec.at/pics/schaltungen3/PICT0007.JPG also für einen BMW Bj2001 bin ich mir sicher das es was schönes fertiges gibt.
Warum einfach, wenn es auch kompliziert geht? Für die Darstellung istsprintf mit float auch ausreichend schnell. The right tool for the right job.
floatberechnungen zu kompilieren is immer eine recht Speicheraufwenidige angelegenheit, aber geht natürlich auch :)
Wer mit 0 Vorkenntnissen nur mal schnell ein Display zum Anzeigen von Temperaturen haben will, sollte lieber auf www.eima-electronics.de vorbei schauen, da gibt es alle möglichen Variaten. Hab ich auch so gemacht und mir dann doch viel Arbeit,Geld und Nerver erspart. Nur mal so als Hinweis*G
Hallo Markus, ohne Dir den Elan ganz nehmen zu wollen (ich vertrete meist eher die Einstellung "geht nicht gibts nicht") will ich mir doch eine kleine Warnung nicht nehmen lassen: Zitat: Anders herum gesagt: Ich bekomme einen variablen Wiederstand an den Analogeingang, den ich entsprechend in "°C" oder "bar" umsetzen muss. Da die Kennlinie linear ist, ist dise Umrechnungstabelle relativ simpel. Zitat Ende Da liegt bereits ein Fehler. Die Geber sind NTCs, zu lesen irgendwo oben "Heißleiter". Die geben keine linearen Widerstände aus. Typisch dafür sind eben die 3 Werte bei unterschiedlichen Temperaturen. Idealerweise sollte man für einen Geber entweder eine komplette Kennlinie oder die o.g. Werte samt eines Temperaturkoeffizienten zur hand haben, dann lässt sich alles weitere mit einer festen Formel berechnen. Das ganze erfordert also entweder eine konstante Berechnung der tatsächlichen Temperatur oder (wie oben mal kurz angedeutet aber IMO nicht wirklich konkret als Problem hervorgehoben) eine zuvor berechnete und hinterlegte Sprungtabelle. Ferner kann man derartige Temperaturgeben auch durch entsprechende Beschaltung in einer Widerstandsbrücke ein wenig linearisieren und auf brauchbare Level bringen. Insgesamt ist die Sache durchaus machbar, sowohl Finanziell als auch von der Funktionalität, und gut aussehen kann es durchaus auch ;) Etwas einarbeitung in Mikrocontroller ist jedoch nicht zu vermeiden, aber wenn man mit einigen wenigen Basteleien anfängt und so das Programmieren selbiger üben kann kommt man aus eigener Erfahrung meist überraschend schnell zum Erfolg. Ciao...
Hi nochmal ;) was, mir noch einfaellt: "Originalgeber" von VDO, aber auch z.B. Bosch sind meist vergleichsweise teuer. Hier lohnt es sich auch mal etwas mehr zu suchen. Generell solltest Du dir die "einfache Methode" mit dem Geber als ersatz für die Ablaßschraube jedoch reiflich überlegen, bei den meisten Fahrzeugen ist das eine recht ungünstige Postition. Ich persönlich bin z.B. ganz von der idee weg, ist mir einfach zu riskant bzgl. Abreißen der Leitung oder gar der ganzen Schraube. Auch hier gibts durchaus alternativen. das hängt aber nicht zuletzt auch vom Fahrzeug ab. Es gibt wohl Modelle, die haben bereits blindgelegte Gewinde an passender Stelle für eine solche Erweiterung, da ist das natürlich ideal. Ciao...
Hallo Gemeinde, ich weiß - die Postings sind schon eine wenig in die Jahre gekommen, aber den gesamten Verlauf durchzulesen, hat mich echt amüsiert. Mein Lösungsvorschlag: Arduino + Spannungsversorgung 5V für KFZ + 16x2 Display + Kleingram + 1-2 Tage Arduino einlesen = fertige Anzeige Kosten ca. EUR 25 Zeitaufwand ca. 1-2 Tage Beste Grüße, Peter
peter schrieb: > die Postings sind schon eine wenig in die Jahre gekommen Richtig, und die Lösung, die man 6 Jahre später vorschlagen kann, sieht logischerweise immer komplett anders aus als das, was damals zur Debatte stand. Insofern ist es alles andere als sinnvoll, dafür den alten Thread nochmal aufzuwärmen.