Forum: Mikrocontroller und Digitale Elektronik OBD2 quelle und entwicklung


von René V. (vollmi)


Lesenswert?

Hallo Zusammen

Ich studiere schon länger an einer Möglichkeit rum über OBD2 
Fahrzeugdaten zu holen und damit Relais zu schalten und andere 
Funktionen auszuführen.

Als erstes will ich den Pid für die Drehzahl auslesen und abhängig vom 
Wert ein Relais ansteuern.

Mir schwebt sowas in der Art vor:
http://www.blafusel.de/obd/sugt_o-meter.html

Allerdings hätte ich gerne etwas das schon so weit ist wie obengenanntes 
Projekt und schon funktionierende Quellen mitliefert welche man 
studieren und erweitern könnte.

Sämtliche OBD Bausätze welche nicht als Interface zum Computer dienen 
sollen die ich gefunden habe waren ohne Quellen zu haben. :(

Gibt es ein Projekt mit Source welches schon so weit das man zumindest 
OBD auslesen und damit arbeiten und zwar schon im Microcontroller. Nicht 
einfach nur ein Interface. Möglichst mit ATMEL AVR µC

mfG René

von hp-freund (Gast)


Lesenswert?

Frag doch mal die junge Frau hier:

http://www.nerdkits.com/videos/obdii/

von Erwin R. (er-tronik)


Lesenswert?

Im OBD2-Bereich wirst Du sicher nicht so einfach Sourcen finden. Da ich 
selber Software für OBD2-Diagnosegeräte entwickle, weiß ich, dass da 
teilweise monatelange Entwicklungsarbeit drinsteckt. Vor allem die 
verschiedenen Protokolle und Fahrzeuge, in denen Steuergeräte werkeln, 
die nicht ganz der Norm entsprechen, machen einem die Arbeit nicht 
gerade leicht. Da ist es sicher verständlich, dass man solche Arbeit 
nicht als Open-Source weitergeben will.
Aber warum das Rad immer wieder neu erfinden? Es gibt inzwischen recht 
preisgünstig OBD2-Module, die zur Verwendung in eigenen Anwendungen 
hervorragend geeignet sind. Hier steckt immer die aktuelle Software drin 
und man kann sicher sein, daß diese Module auch an nahezu allen 
Fahrzeugen funktionieren. Anzusteuern ist das einfach über die 
UART-Schnittstelle eines beliebigen Microcontrollers.
http://www.obd-shop.com/danila/product_details.php?id=357&lang=de

Ansonsten gebe ich nur den Rat, hinsetzen und selber entwickeln.

Erwin

von René V. (vollmi)


Lesenswert?

Hi

Danke für die Infos.

Das Nerdkit hört sich ja mal richtig interessant an.

Das DIAMEX-DX-MODUL ist auch interessant. Gibts dazu vielleicht schon 
ein Projekt bei dem ein AVR schon mit dem Modul kommuniziert.
Ich habe bis jetzt eben nur das Demoboard von pollin verwendet und noch 
nie eine uart Kommunikation aufgebaut.
Komme eben aus dem SPS bereich da ist so eine Kommunikation etwas 
einfacher aufzubauen als in einem Mikrocontroller ^^

Aber so wie ich das in der Modulbeschreibung lese, kann man dieses recht 
einfach auch an das AVR-NET IO Board anschliessen und einfach mal 
ausprobieren.

von GGast (Gast)


Lesenswert?

Erwin Reuss schrieb:
> Im OBD2-Bereich wirst Du sicher nicht so einfach Sourcen finden.

Naja, da sollte schon was zu finden sein, eine kurze Google-Suche bringt 
jedenfalls Ergebnisse (hab mir aber nix davon genauer angeschaut).

http://freediag.sourceforge.net/
http://www.obdtester.com/pyobd
http://code.google.com/p/opengauge/wiki/OBDuinoInterface
http://www.nerdkits.com/videos/obdii/
http://www.opendiag.org/

von Thomas T. (knibbel)


Lesenswert?

René Vollmeier schrieb:
> Als erstes will ich den Pid für die Drehzahl auslesen und abhängig vom
> Wert ein Relais ansteuern.

Falls du es speziell nur für einen Fahrzeugtyp haben willst und es 
selbst entwickeln möchtest (was durch das einzuhaltende Protokoll doch 
etwas Zeit in Anspruch nehmen wird), solltest du dich zuerst mit der Art 
des Interfaces auseinandersetzen. Speziell CAN-Interface oder 
KL-Interface.

Neuere Fahrzeuge haben CAN an Board, so dass das KL-Interface über kurz 
oder lang obsolete wird.

Gruß,
Thomas

von René V. (vollmi)


Lesenswert?

Ist eine 2003er Corvette. Hat wohl VPW J1850 also KL-Interface?
Würde also dafür sprechen das ich mit dem Nerdkit System Erfolg haben 
würde. Natürlich erstmal auf das Testboard portiert das ich auf meinem 
Tisch liegen habe.

von hp-freund (Gast)


Lesenswert?


von Thomas T. (knibbel)


Lesenswert?

hp-freund schrieb:
> Noch ein kleiner Tip, hier die lib :)
> http://www.cs.umb.edu/~eb/ledDisplay/nerdkit/Code/...

Hmmm, grad mal nachgeschaut, aber in meinem Internet gibt es hier nur 
Basis-Infos für LCD und UART.

Nichts für OBD2 ...

Gruß,
Thomas

von hp-freund (Gast)


Lesenswert?

Die eigentliche c-Datei gibts in meinem ersten link. Diese braucht 
libnerdkits...

von Thomas T. (knibbel)


Lesenswert?

hp-freund schrieb:
> Die eigentliche c-Datei gibts in meinem ersten link. Diese braucht
> libnerdkits...

Ohhh, sorry... :-)

von Erwin R. (er-tronik)


Lesenswert?

GGast schrieb:
> Erwin Reuss schrieb:
>> Im OBD2-Bereich wirst Du sicher nicht so einfach Sourcen finden.
>
> Naja, da sollte schon was zu finden sein, eine kurze Google-Suche bringt
> jedenfalls Ergebnisse (hab mir aber nix davon genauer angeschaut).
>
> http://freediag.sourceforge.net/
> http://www.obdtester.com/pyobd
> http://code.google.com/p/opengauge/wiki/OBDuinoInterface
> http://www.nerdkits.com/videos/obdii/
> http://www.opendiag.org/

Hättest diese Links aber mal anschauen sollen. Nirgendwo ist ein 
Sourcecode für die OBD2-Low-Level Routinen dabei. Alle verwenden fertige 
OBD2-Adapter, bzw. nutzen das K/L-Interface als Pegelwandler.

Erwin

von Erwin R. (er-tronik)


Lesenswert?

René Vollmeier schrieb:
> Ist eine 2003er Corvette. Hat wohl VPW J1850 also KL-Interface?
> Würde also dafür sprechen das ich mit dem Nerdkit System Erfolg haben
> würde. Natürlich erstmal auf das Testboard portiert das ich auf meinem
> Tisch liegen habe.

VPWM ist NICHT KL-Interface!!!!
VPWM benutzt nur den PWM+ Pin2 auf der OBD2-Buchse. Signalpegel ist hier 
ca. 8 Volt aktiv.

Erwin

von René V. (vollmi)


Lesenswert?

Erwin Reuss schrieb:
> VPWM ist NICHT KL-Interface!!!!
> VPWM benutzt nur den PWM+ Pin2 auf der OBD2-Buchse. Signalpegel ist hier
> ca. 8 Volt aktiv.

Ah danke für die Aufklärung. Aber trotzdem wäre dafür das Nerdkit eins 
zu eins übertragbar, da die dort genau PWM+ direkt über Pegelwandlung 
auf den ATMEGA auflegen.

Danke für die sehr interessanten Informationen.

von Groundzero (Gast)


Lesenswert?

Zwei Wege:

1. alles neu erfinden -> Links sind oben genug genannt. Entwicklungszeit 
ca. 1-3 Jahre. Das auch nur, wenn man sich intensiv mit dem Thema 
befasst und ordentlich Kohle und Zeit in Normblätter und Vorschriften 
investiert. Der Sparfuchsweg entpuppt sich in diesem Segment ganz 
schnell als Investitionsgrab für viele tausend Euros...

2. Fertiges "knoffhoff" nutzen -> Controller mit fertiger Firmware gibt 
es schon ein paar. Die kosten im Vergleich zu 1) nur wenig Geld. Erwin 
sagt es schon, da steckt ne Menge Erfahrung und Entwicklung drin. 
Trotzdem sind die Teile vergleichsweise billig. Schade nur dass viele 
Programmierer überschnappen und meinen in ein paar Stunden und mit 30 
Euro Aufwand OBD2 umsetzen zu können. Ein gewaltiger Irrtum und eine 
völlige Selbstüberschätzung! ELM, AGV oder DXM sind die Suchwörter bei 
Google.
Interessant scheint DXM zu sein. Elektor hat schon wieder zwei neue 
Interface auf Basis dieses Moduls vorgestellt - ganz aktuell im 
April-Heft 2011 nachzulesen. Auch gibt es auch ein älteres open-source 
Projekt "Analyser NG" September 2009. Dort sind die Sourcen offen 
douwnloadbar.

Wenn Du also schnelle Erfolge haben willst, dann ist das der bessere 
Weg. Und der ist auch billiger. Kein Mensch baut sich einen Kleinwagen 
in der Garage selbst aus Einzelteilen auf. Genauso ist es hier. Wer 
diagnostizieren will, der sollte sich einen spottbilligen Controller 
kaufen und seine Anwendung mit einem Hostcontroller individuell 
abstimmen.

Geheimtipp: ELV bietet ein Starterkit zum Selbstbau an - ca. 50 Euro. 
Das ist schwer zu toppen...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.