Hallo zusammen, ich hatte schon im letzten Post in dem es sich um Flexray gedreht hat ob irgend wer Erfahrung in dem Gebiet hat. Ich werde es hier nocheinmal tun. Es geht um ein Projekt während meinem Master-Studium wo ich in die Flexray-Kommunikation eines BMWs eingreifen soll. Um sich mit dem Gebiet näher vertraut zu machen wurden zwei SPC56EL70L5 Boards gekauft um ein Test-Netzwerk auf zu bauen. Nun stellt sich die Frage: Gibt es Sample Codes die die Flexray-Kommunikation im Programmcode demonstrieren? Ich hatte bei der Suche bis jetzt noch keinen Erfolg. Würde mich freuen wenn der eine oder andere mir Tipps geben könnte die mich in eine neue Richtung führen. Beste Grüße, David.
Dein Vorhaben dürfte relativ schwer werden... Diejenigen, die Flexray einsetzen, verwenden üblicherweise einen Softwarestack (gerne AUTOSAR), den man nicht so eben bekommt. Da kosten die Evaluierungslizenzen je nach Funktionsumfang gerne schon fünfstellig. Wer hat Dir denn das Projekt gegeben? Derjenige sollte Dir dann auch den Softwarestack besorgen und natürlich die Kommunikationsmatrix, wer wie auf dem Bus kommuniziert (früher FIBEX-Datei, inzwischen wahrscheinlich in einem AUTOSAR-Format).
:
Bearbeitet durch User
Danke für deine Antwort Martin, ich "forsche" quasi für eine Firma, bzw. ich soll mal einen Prototypen aufbauen der eben mit Flexray funktioniert. Sie haben die gleiche Funktionalität schon für den CAN-Bus aber eben keine Erfahrungen mit Flexray. Kannst du mir den AUTOSAR Softwarestack näher erläutern bzw. mich auf eine Seite verweisen wo ich nachlesen kann was das genau ist. Habe das schon öfters gelesen aber nicht so ganz kapiert worum es sich dabei handelt. Komischerweise habe ich während meiner Nachforschungen auf fast allen Seiten die selbe "flache" Beschreibung über Flexray gefunden und irgendwie geht keiner "ins Detail" was die Software-Seite anbelangt. Beste Grüße, David
https://elearning.vector.com/vl_flexray_introduction_de.html https://elearning.vector.com/vl_autosar_introduction_de.html Grüße,
AUTOSAR ist prinzipiell ein großer Packen Papier (bzw. PDFs), der Standardsoftware und Softwarearchitektur für die Automobilbranche beschreibt. Das ganze kann man sich gratis auf http://www.autosar.org/ herunterladen, macht aber nur Sinn, wenn man ganz tief einsteigen will. Diese Standardsoftware ist sozusagen das "Betriebssystem" für Steuergeräte (Betriebssystem steht in Anführungszeichen, da der Standard noch einiges mehr als nur das OS umfasst). Dass im Internet kaum ins Detail gegangen wird, liegt wahrscheinlich auch daran, dass die Flexray-Spezifika so weit es geht durch den AUTOSAR-Stack (bzw. andere Stacks wie z.B. OSEK) abstrahiert werden. Außer den Stack-Herstellern (und ggf. den µController-Herstellern), die die "Treiber" (MCAL = Mictrocontroller Abstraction Layer) schreiben, muss sich theroretisch niemand wirkliche Gedanken um die Implementierung machen. Ein anderer Grund dürfte sein, dass Flexray für Bastler ziemlich uninteressant ist... Wenn Deine "Forschung" irgendwann in ein Produkt (Steuergerät) münden soll, das an einen Autohersteller (OEM) verkauft werden soll, führt wahrscheinlich kein Weg an einem von diesem Hersteller "zugelassenen" AUTOSAR-Stack vorbei. Wie der Vor-Poster bereits verlinkt hat gibt es bei Vector ganz gute Präsentationen zu der Thematik, die man sich zu Gemüte führen kann. Es gibt zwar durchaus Steuergeräte, bei denen der ganze Kram ohne fertigen Stack implementiert wurde, das ist aber die Ausnahme. Wenn man sowas verkaufen will, muss man dem OEM erstmal beweisen, dass man weiß, was man tut. Und das kann dann aufwändiger und teurer werden, als einen der empfohlenen Stacks zu verwenden.
Hallo, vielen Dank für deine umfassende Antwort. Leider verstehe ich noch immer nicht genau was dieser Stack sein soll, aber ich werde mir mal die verlinkten Seiten ansehen. Ich hätte es so verstanden: Man hat ja einen Communication Controller (CC) und einen Bus Treiber (BT), wobei der CC für die Timing Geschichten, Aufbau der Pakete, etc. verantwortlich ist, Und der BT dann diese auf die entsprechenden Spannungspegel bringt. Also sollte man eigentlich, laut meinem Verständnis, dem CC "einfach" die Daten die man schicken möchte plus wann man sie schicken möchte geben und alles ist in Butter. Offensichtlich nicht so "einfach" wie erwartet. Beste Grüße, David
David S. schrieb: > Also sollte man > eigentlich, laut meinem Verständnis, dem CC "einfach" die Daten die man > schicken möchte plus wann man sie schicken möchte geben und alles ist in > Butter. Ja, eigentlich ist es so "einfach". Nur dass man den CC eben erstmal konfigurieren muss, damit er das tut was er soll. Je nachdem, wieviele Buffer der CC hat, wie flexibel man diese konfigurieren kann und wieviele Frames man senden und empfangen will, ist es dann vielleicht doch nicht mehr ganz so einfach. Wenn man dann auch noch ein vollwertiger Busteilnehmer sein will, sollte man noch diverse (OEM-spezifische) Protokolle verstehen - beispielsweise für Diagnose und Netzwerkmanagement. Es hängt sehr viel davon ab, was denn am Ende Deiner Forschung stehen soll. Soll das "Ding" nur passiv mithören und ein paar Signale mitschneiden oder ein "richtiges" Steuergerät sein, das seine eigenen Frames sendet...
Martin H. schrieb: > Ein anderer Grund dürfte sein, dass Flexray für Bastler ziemlich > uninteressant ist... Uninteressant ist der FR nicht, ganz im Gegenteil. Die Messlatte für Knowhow liegt nur höher, und viele fummeln ja immer noch mit OBD2 rum, erst ganz langsam gehts richtung Bordnetz-CAN. Die Frage bleibt aber, was sollst du auf dem FR anstellen? Soll deine Entwicklung kaltstartfähig sein? Lesen/schreiben/loggen/auf ethernet umsetzen? Aus dem Stand einen oder zwei FR-Teilnehmer zu bauen stell ich mir für eine Masterarbeit ein wenig overkill vor.
Schau mal hier: https://www.star-electronics.de/development-board-flexdevel Das Board gibt es auch als Kit mit allem drum und dran um ein Beispiel FlexRay Netzwerk auf zu bauen. Damit haben wir damals auch die ersten Schritte in Richtung FlexRay unternommen. Falls ihr gar keinen Background zu FlexRay habt solltet ihr aber vorher eine Schulung besuchen. Sonst wird das ein langer und schmerzhafter Weg. Wie schon gesagt wurde dürfte mittelfristig das größte Problem sein dass ihr eine Beschreibung (Fibex oder Autosar xml) des Netzwerkes benötigt. Viel Erfolg!
Hallo zusammen, danke für die Antworten. Also am Ende sollte ich lesen und schreiben können. Ich werde natürlich am Anfang kleine Schritte machen und am Anfang zuerst probieren ein Netwerk mit 2 Evaluation Boards aufbauen. Gibt es eine Möglichkeit die Felxray Konfiguration von einem bestehenden/laufenden Bus auszulesen? Oder müsste ich mir da alles quasi "per Hand" mit dem Oszi messen und ableiten (könnte schwierig werden)? Danke nochmals für eure Hilfe. Beste Grüße, David /* EDIT Wir haben auf der FH in einer Vorlesung Flexray behandelt, also ich glaube eine grobe Vorstellung zur Funktionsweise des Bus zu haben */
:
Bearbeitet durch User
David S. schrieb: > Gibt es eine Möglichkeit die Felxray Konfiguration von einem > bestehenden/laufenden Bus auszulesen? Oder müsste ich mir da alles quasi > "per Hand" mit dem Oszi messen und ableiten (könnte schwierig werden)? Ersteres glaube ich nicht. Warum sollten die Parameter auf dem laufenden Bus übertragen werden? Zweiteres sollte möglich sein, ist aber Arbeit. David S. schrieb: > Also am Ende sollte ich lesen und schreiben können. Wenn Du senden willst, muss Dir aber auch der entsprechende Slot zugewiesen sein, d.h. Dein Gerät muss als Busteilnehmer vom OEM eingeplant worden sein. Wenn dem so wäre, hättest Du zumindest eine Spec (FIBEX oder AUTOSAR XML), die Dir die Busparameter, Frameinhalte und die direkten Kommunikationspartner verrät. Oder willst Du ein existierendes Steuergerät durch ein eigenes ersetzen, bzw. ein nicht verbautes selbst ergänzen? Dann wäre die Bestimmung der Busparameter noch das einfachste am Reverse-Engineering.
Hallo, Martin H. schrieb: > Ersteres glaube ich nicht. Warum sollten die Parameter auf dem laufenden > Bus übertragen werden? Ich hatte eher an Software-Tools gedacht die dafür desiged wurden bzw. vlt. kann man diese Datei aus irgend einem Speicher auslesen (wohl eher nicht). Martin H. schrieb: > Zweiteres sollte möglich sein, ist aber Arbeit. Da muss ich wohl durch. Martin H. schrieb: > Wenn Du senden willst, muss Dir aber auch der entsprechende Slot > zugewiesen sein, d.h. Dein Gerät muss als Busteilnehmer vom OEM > eingeplant worden sein. Wenn dem so wäre, hättest Du zumindest eine Spec > (FIBEX oder AUTOSAR XML), die Dir die Busparameter, Frameinhalte und die > direkten Kommunikationspartner verrät. Das ist mir vorhin eben auch aufgefallen. Ich werde wohl erstmal den Bus messen und mir ein Bild davon machen. Nachdem ich die config kenne werde ich mir ein genaues Konzept überlegen. Martin H. schrieb: > Oder willst Du ein existierendes Steuergerät durch ein eigenes ersetzen, > bzw. ein nicht verbautes selbst ergänzen? Dann wäre die Bestimmung der > Busparameter noch das einfachste am Reverse-Engineering. Nein das existierende Steuergerät soll nicht ersetzt werden. Wie oben angemerkt werde ich den genauen Aufbau des Systems festlegens obald ich weiß wie der Bus so arbeitet. Danke. Beste Grüße, David
:
Bearbeitet durch User
Hallo David, ich habe aktuell das selbe Problem wie du. Hast du schon eine Lösung gefunden? Im ersten Schritt will ich eigentlich nur mal den Flexray auslesen und weiß aber nicht welche Komponenten ich dafür brauche. Vermutlich ein Evaluations Board mit Flexray Transceiver und dem Controller dazu. Welches Board hast du verwendet? Viele Grüße Matthias
Oh Leute... FR läuft mit 10Mbit, wann welche Information übertragen wird, steht, wie hier schon mehrmals erwähnt, in einer Konfigurationsdatei. Diese ist nur dem Auto-Hersteller = OEM oder seinen Zulieferen bekannt. Die Datei dient als Input für einen Code-Generator, der die Konfiguration des COM-Stacks und des FR-Controllers generiert. Mit auslesen aus dem Steuergerät oder mitlauschen am Bus ist da nix! Entweder du hast Zugriff auf diese Komunikationsmatrix oder es wird sehr, sehr aufwendig die Informationen im Datenstrom wieder zu finden. Wenn man aber noch nicht einmal weiss wonach man sucht, kann man damit Jahre verbringen. Ein Demo Projekt mit 2 Eval-Boards als FR-Knoten aufzusetzten mag eine angemessene Aufgabe für eine Masterarbeit sein. Aber Daten von einem Fahrzeugbus auszuwerten, von dem nichts weiter bekannt ist, ist eine andere Nummer. Vom Senden ganz zu schweigen.
Hallo Matthias, also ich bin noch nicht sehr weit gekommen, habe jedoch 3 Eval. Boards (wie schon erwähnt) gefunden die interessant klingen. 1) SPC56EL (von ST) - relativ kostengünstig, schnelle Lieferzeit (wird von mir verwendet) 2) S12XFSTARTERKITE (von NXP) - kostet ein bisschen mehr, dafür aber auch 18 Wochen Liefzeit 3) Ein board von Fujitsu wo ich jetzt den genauen Namen nicht mehr finde aber soweit ich das mitbekommen habe ist es garnicht mehr zu kaufen. Nr. 2 und 3 sind für mich nicht in Frage gekommen und ST hat leider relativ schlechten Support was FlexRay angeht. Wenn du möchtest können wir uns gerne einmal außerhalb dieses Forums unterhalten. An "FlexRay" (wohl ein ungünstiger Name des Authors :D): Du hast durchaus recht. Es ist schon schwer genug ohne Beispielprogramme mit 2 Knoten ein Netwerk aufzubauen, bzw. sich alleine durch die ca 70 konfigurations Parameter durch zu kämpfen. Ich werde mal versuchen mit einem Oszi den Bus zu messen und versuchen einen Sinn darin zu finden. Es gibt Oszis die Daten vom FR-Bus lesen könne. Außerdem muss ich noch erwähnen das mir dringlichst dazu geraten wurde einen Controller/Eval.Board zu verwenden welches den FR-Controller und den Tranceiver schon verbindet. Beste Grüße, David.
:
Bearbeitet durch User
Hallo David, > 1) SPC56EL (von ST) - relativ kostengünstig, schnelle Lieferzeit (wird > von mir verwendet) > 2) S12XFSTARTERKITE (von NXP) - kostet ein bisschen mehr, dafür aber > auch 18 Wochen Liefzeit > 3) Ein board von Fujitsu wo ich jetzt den genauen Namen nicht mehr finde > aber soweit ich das mitbekommen habe ist es garnicht mehr zu kaufen. Ich habe mit das FlexDevel Board von Star Electronics angeschaut und hoffe, dass es für mein Vorhaben das richtige ist. Sind bei dem SPC56EL keine Beispielprogramme dabei? VG Matthias
Hallo, nein von ST gibt es leider keine Bsp. Programme für FlexRay. Es wird nicht einmal von der IDE unterstützt. Dein Board sieht sehr interessant aus, könnte dir wohl etwas leichter als mir gehen :D. Falls du Interesse daran hast würde ich mich gerne außerhalb des Forums mit dir unterhalten, vlt. können wir uns gegenseitig helfen. Beste Grüße, David
Hallo David, wir können uns gerne außerhalb des Forums noch unterhalten. Ich habe dir bereits eine Nachricht geschrieben - hast du diese erhalten? VG Matthias
Passt eigentlich nur so halb zum Thema, aber vmtl wird es beim Debuggen helfen. Bei ebay sind immer mal wieder die alten PCI-Flexray-Karten drin, die VN3300. Die gehen erstens günstig her und zweitens kann man beim Vector eine kostenlose Demo-apllikation herunterladen, die dann die Rohwerte vom Bus anzeigt.
Hallo Stefan, Danke für deine Hilfe. Wir haben bei uns in der Firma bereits die VN Boxen mit passender SW. Ich soll jedoch eine Alternative für mein Projekt suchen und kann deshalb nicht die HW und SW von Vektor verwenden. Stefan M. schrieb: > Passt eigentlich nur so halb zum Thema, aber vmtl wird es beim Debuggen > helfen. Bei ebay sind immer mal wieder die alten PCI-Flexray-Karten > drin, die VN3300. Die gehen erstens günstig her und zweitens kann man > beim Vector eine kostenlose Demo-apllikation herunterladen, die dann die > Rohwerte vom Bus anzeigt. VG Matthias
Hallo zusammen, ich habe mit Spannung diesen Thread gelesen. Leider endet er hier. Es wäre für mich extrem interessant zu wissen wie euer Projekt weiter gelaufen ist? Hintergrund für mich ist dieses Projekt: https://comma.ai/ Mein Auto hat FlexRay und wir versuchen dieses u. a. kompatibel zu machen. Es ist nicht einfach, aber wir kommen voran. Ich würde mich freuen, wenn ich von jemandem etwas hören würde. Viele Grüße crypted
Hallo crypted, Mein Projekt ist super verlaufen. Habe mit einem FlexRay Entwicklungsboard die Verbindung zum Fahrzeug hergestellt - dafür benötigt man jedoch die Herstellerfibex. VG
Das hört sich super an. Wir verwenden das hier: DEVKIT-MPC5748G-ND Wir werden ganz bestimmt nicht die fibex bekommen. Wie siehst du das, kann man es auch ohne Fibex hinbekommen?
Ohne Fibex wird es vermutlich sehr schwer aber kann sein, dass es möglich ist. Ich habe das FlexDevel Board verwendet
Hallo, grüß Dich, bei mir ists leider nicht so toll verlaufen weil ich die oben genannte Herstellerfibex Datei nicht bekommen hab'. Geben die Kollegen anscheinend nicht so gerne her ;). Ich habe es jedoch geschafft alleine mit Lauschen auf dem Bus die config-Parameter so weit zu lesen, dass ich es geschafft habe mich mit dem Bus zu synchronisieren und Messages zu lesen. Hatte dann leider nicht mehr die Zeit dazu um testen zu können ob ich zum senden auch noch komme. Bin mir nicht sicher ob dir das irgendwie hilft, bzw. ob du mehr Info über das Projekt haben möchtest, hab' mich jetzt aber leider länger nicht mehr mit diesem Thema beschäftigt. Also falls du noch Fragen hast kann ich dir nicht mit Sicherheit helfen, aber probieren kann ich es mal :) BG, David
Als Erstes möchte ich mich über die super schnellen Rückantworten bedanken. Allein das freut mich schon riesig. Wie hoch war wohl die Wahrscheinlichkeit bei einem Thread, welcher 2 Jahre alt ist, noch Antworten zu bekommen. :-DDD @David Deine Erfahrung wäre perfekt für den Anfang. Ein Kollege hat das hier aufgebaut https://github.com/nanamiwang/openpilot/wiki/FlexRay-Introduction Ich habe die ganze Hardware. Wir haben schon diverse FlexRay Parameter, aber diese sind leider nicht valide. Wie sollten wir deiner Meinung nach vorgehen, um fürs erst mitlesen zu können. Alle Infos die du darüber hast und wie du es geschafft hast mitzulesen, wären extrem hilfreich. Dafür wäre ich dir sehr dankbar! Beste Grüße!
Mich hat es genauso gewundert wie ich ein Mail bekommen habe dass jemand in diesem Thread schreibt :D. Ich muss erst mal meine meine ganzen Daten zu diesem Thema ausgraben. Hab' im Zuge meines Projekts ein "Konzept entwickelt" das quasi eine Roadmap ist wie man vorgehen muss um an die Parameter zu kommen. Dabei habe ich alle Parameter an Hand deren Abhängigkeiten in ein (soweit ich mich erinnern kann) 7-Schichten Modell aufgeteilt. Dieses Modell gibt quasi vor dass man knapp 15 Werte messen/annehmen/wissen muss um dann die restlichen ~50 (oder so) errechnen zu können. Hoffentlich finde ich diese Datei noch wo ich mir das notiert habe, wird sich aber vmtl. Heut' nicht mehr ausgehen. Ich möchte noch anmerken dass ich mir nicht 100% sicher bin ob das so funktioniert wie ich es geplant hatte. BG, David
Alles klar, super. Es spielt keine Rolle ob es funktioniert, naja ein wenig schon ;-). Jede Information die wir mehr haben, macht uns nur schlauer. Evtl. hast du etwas, was uns noch fehlt und das Puzzle ist gelöst. Danke! Hier sind noch mehr Infos zu dem Teilprojekt: https://github.com/nanamiwang/openpilot/tree/flexray_bounty/flexray_adapter
:
Bearbeitet durch User
Grüß Dich, es tut mir leid dich ohne Antwort so lange warten zu haben, leider komplett drauf vergessen mich bei dir zu melden. Ich habe das Dokument in dem ich alles hübsch aufbereitet habe leider nicht mehr gefunden, keine Ahnung wohin das verschwunden ist. Ich werde so schnell wie möglich versuchen dir die Liste neu zusammen zu schreiben. Hoffe du kannst dann noch mit der Information was anfangen. Bitte um Updates falls ihr einen Durchbruch erreicht habt :). Beste Grüße, David Staffenberger
Hi, schön von dir zu hören. Aktuell habe ich ein PicoScope bestellt. Ich versuche damit die Parameter zu bekommen. Hoffentlich hält es, was es verspricht. Danke, dass du dir die Mühe machst! Selbstverständlich halte ich dich auf dem Laufenden! Viele Grüße
Wir haben es heute geschafft uns zu syncen. Leider fehlen uns aber noch sehr viele Parameter. Das FlexRay Tool wird nun erweitert, damit es die restlichen Parameter per brutforce herausbekommt. Wir sind auf einem guten Weg.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.