SLSS CANopen Analyser

  • Entwicklungsstand: in Entwicklung (letzte Aktualisierung: 08.12.2022)
  • Veröffentlichungen: (Python-Offline veröffentlicht / C# Live Analyser ausstehend)

 

Vorgeschichte

Mit meiner CAN Bus-Software SLSS CANAnalyser* schein ich doch bei so einigen CAN Interessierten einen Nerv getroffen zu haben.
Durch den kostenlosen Download und den „cheap’n’open hardware“ Ansatz habe ich mittlerweile einige nette Kontakte knüpfen können (sogar weltweit was ich immer noch Wahnsinn finde).

Da meine beruflichen „Wurzeln“ bis Anfang letzten Jahres eigentlich immer fest im Automotive Sektor verankert waren, war für mich bis dahin das Multi-Master-Prinzip und die unabhängige Botschaftszuordnung stets das was den CAN Bus ausmachte und wofür ich Ihn einsetzte. Diese grundsätzliche Auslegung findet man zum Beispiel auch in den Beschreibungen der CAN Übertragungsverfahren*, wie hier zum Beispiel auf Wikipedia!

Im Zuge eines Jobwechsels wurde ich dann im ersten Projekt jedoch gleich mit dem Thema CANopen* konfrontiert.
Das Wort „CANopen“ war mir zwar bekannt und bis dahin auch schon einige Male an diversen Stellen „untergekommen“, doch war ich immer weit genug entfernt um mich nicht tiefer mit dem Thema beschäftigen und auseinandersetzen zu müssen!
Da mein neuer Projektleiter jedoch eher die Einstellung „learning by doing“ vertritt (was ich sehr an Ihm mag) und in unserer Abteilung noch kein Wissen hinsichtlich CANopen vorhanden war, wurde ich gleich ins kalte Wasser geworfen und musste mich mit den „Eigenheiten“ des CANopen Protokolls vertraut machen.
Schnell stellte ich fest, dass der CAN Bus selbst und der Aufbau der darauf versendeten Botschaften (CAN Frames) immer noch dasselbe war, doch altbekannte Dinge wie das Multi-Master-Prinzip mittendrinnen obsolet und durch mir bis dahin unbekannte Sachen wie Guarding, Heart-Beat, Node-IDs, SDOs, PDOs oder das ominöse Objektverzeichnis (object dictionary) ersetzt worden waren! So musste ich selbst erst einmal lernen was CANopen überhaupt ausmacht, welche Vorteile und evtl. auch Nachteile der Einsatz von CANopen mit sich bringt und wie die Daten auf dem Bus zu interpretieren sind.

Mehr lesen

SLSS CANAnalyser (Update 1.1.0.14 – 01/2023)

 

Vorgeschichte

Da ich in der Vergangenheit sowohl beruflich, als auch in meiner Freizeit immer wieder mit CAN-Bus Systemen und den darüber versendeten Botschaften in Kontakt gekommen bin, entstand irgendwann der Wunsch / Bedarf nach einer Software, mit dessen Hilfe ich mir das Handling und den Umgang mit den Bus-Daten erleichtern kann. Bis dato habe ich CAN-Botschaften entweder im Terminal, später mit einem Pythonprogramm auf einer  Raspberry Pi*, wie ich sie zum Beispiel als zentrales Gateway bei meinem SLSS CarNet* Projekt verwende, oder mittels der seriellen Ausgabe eines  Arduino* Micro-Controller Boards, angezeigt und mitgeloggt. Die Auswertung der Daten erfolgte dann immer im Nachgang anhand der gemachten Aufzeichnung, oder durch das physische Überprüfen der Reaktionen, welche durch das Senden von bestimmten Botschaften ausgelöst werden sollten. Dies ist auf Dauer natürlich nur wenig komfortabel.

Für die professionelle Bearbeitung von CAN-Bus Daten gibt es natürlich auch professionelle Tools, welche alle gewünschten Funktionen unterstützen und mit verschiedenen, teilweise sogar hardwareseitig implementierten Methoden, sicherstellen, dass jedes Datenpaket welches über den CAN-Bus übertragen wird auch erkannt und mitgeloggt wird. Diese Tools kommen meist in den Entwicklungsabteilungen für Kraftfahrzeuge, Nutzfahrzeuge, Schiffe und auch anderen Maschinen zur grundlegenden Auslegung und Entwicklung des CAN-Bus zum Einsatz und werden ständig weiterentwickelt, geupdatet und verbessert. Da dieser Vorgang für die entwickelnden Firmen recht zeit- und kostenintensiv ist, werden diese Programme leider meist als zeitlich begrenzte Lizenzversionen verkauft und benötigen nicht selten herstellerspezifische Hardware, welche ebenfalls nicht ganz billig ist. Diese tollen und sehr nützlichen Tools sind damit leider für den Hobbybereich oder den sporadischen Einsatz einfach zu teuer.

Mehr lesen