SLSS CarNet (Update 2021)

Die letzten Tage habe ich meine HTML-basierte Software des „SLSS CarNet Command Centers“ (Hauptartikel: SLSS CarNet*) weiter um- und ausgebaut. Nach der Installation der Hardware im Sommer 2020 konnte ich auf meinen Testfahrten (welche coronabedingt leider nicht so häufig waren wie gehofft) einiges an Erfahrungen und Eindrücken sammeln. Die ersten Erkenntnisse daraus habe ich nun in Form von Updates und Verbesserungen in die Software einfließen lassen. Das es an der einen oder anderen Stelle Verbesserungspotential geben wird, war mir bereits bei der Entwicklung der Soft- und Hardware klar. Ich war ziemlich erstaunt, dass sowohl die GPS-Ortung inkl. Richtungs- und Geschwindigkeitserkennung, als auch andere Komponenten, welche ich vorher nicht während der Fahrt (also „in Bewegung“) testen konnte, auf Anhieb funktionierten. Somit beschränken sich die Verbesserungen auch eher auf Optimierungen in Sachen Performance, Usability und Reaktionsgeschwindigkeit.

 

Verbesserung der CAN-Bus Reaktionsgeschwindigkeit dank Python

Eine Sache, welche mich schon beim Erstellen der Software beschäftigte, war die Erkennung der über den CAN-Bus gesendeten Botschaften. Ursprünglich nutze ich hierfür ein PHP-Script, welches per „shell_exec()„-Befehl das Lesen der CAN-Daten übernahm. Das Problem hierbei war zum einen, dass dieses Script nicht in einer Endlosschleife laufen konnte, da die so gesammelten Daten nach Zeit-X gespeichert werden mussten und dafür der Lesevorgang beendet werden musste. Zum anderen lief dieses Script innerhalb des „Command Centers“ was dazu führt, dass CAN-Daten nur erfasst wurden, wenn dieses auf einem Gerät ausgeführt wurde. 

Mehr lesen

3D-Universalhalterung für den Arduino Uno

Beschreibung

Während der Entwicklung der SLSS CANAnalyser* CAN-Bus Software benötigte ich mehrere Arduino Uno R3* Micro-Controller Boards inkl. angeschlossener MCP2515 CAN Bus Shields*, um die Kommunikationschnittstelle mit dem Computer entwickeln, testen und debuggen zu können. Da jedes der CAN-Boards bereits 7  JumperWires* für den Anschluss an den Arduino benötigt und die beiden CAN-Verbindungsleitungen zwischen den Controllern auch noch dazugekommen sind, sah es auf meinem Basteltisch ziemlich „chaotisch“ aus und das obwohl ich nicht wirklich viel mit den Boards machte (ich arbeitete ja an der Software). Noch schlimmer wurde es, als ich den Aufbau, um für ein anderes Projekt platz zu haben, auf die Seite räumen musste. Dabei lösten sich zum Teil die Anschlussleitungen am CAN-Board, am Arduino oder gleich auf beiden Seiten und ich musste diese jedes Mal neu verbinden, was dann auf Dauer doch etwas nervig war.

Aus diesem Grund entschloss ich mich dazu ein Halterung zu konstruieren, welche das CAN Board mit dem Arduino verbindet, die Kabel etwas in Zaum hält und mir trotzdem noch die Möglichkeit bietet die übrigen Ein- und Ausgänge des Arduino-Boards frei zu konfigurieren. Jetzt hätte ich zu diesem Zweck natürlich eine Platine bauen können, welche das CAN-Board aufnimmt und auf den Arduino Uno* aufgesteckt wird. Dies habe ich in der Vergangenheit schon des Öfteren gemacht und das hat auch immer super funktioniert. In diesem Fall wäre es jedoch zum aktuellen Zeitpunkt unnötig gewesen, da ich sowieso die Idee habe für die CAN-Software ein passendes Hardware-Layout zu erstellen. Diesen Schritt möchte ich mir allerdings für die fertige Software aufheben, da ich dann genau weiß, was ich wie und wo umsetzen möchte. Um nun doch ein wenig Ordnung in meinen Versuchsaufbau zu bekommen und die Boards auch „mobil“ nutzen zu können, habe ich mich also für das Erstellen einer Halterung für den 3D-Drucker entschieden.

Mehr lesen

SLSS Newsletter – Update-Informationen und Neuigkeiten per E-Mail

Warum ist der Newsletter sinnvoll

Da es doch ab und an vorkommt, dass ich die hier gezeigten Inhalte (Programme, VBA Module, Anleitungen etc.) bearbeite, ergänze oder einer kompletten Überarbeitung unterziehe, habe ich mir Gedanken darüber gemacht, wie ich dies an alle Personen welche sich dafür interessieren oder eines meine Programme / Module nutzen, weiterkommunizieren kann.

Am sinnvollsten erscheint mir für diesen Zweck, die besagte Personengruppe einfach per E-Mail auf dem laufenden zu halten. Um dies so einfach wie möglich zu gestalten, habe ich einen Newsletter eingeführt, über welchen ich genau dies in Zukunft umsetzen werde. Hierbei gibt es aber keinen festgelegten Zeitplan. Falls ich der Meinung bin, dass es eine Neuerung oder auch der „Entwicklungsfortschritt“ eines aktuellen Projektes (wie zum Beispiel das aktuelle SLSS CANAnalyser* Projekt) „verdient“ hat erwähnt zu werden, werde ich dies kurz in einer E-Mail zusammenschreiben und diese anschließend an alle angemeldeten Abonnenten versenden.

Mehr lesen

SLSS Excel-Mailer – automatischer E-Mail-Versand mit Microsoft Excel

(für die Verwendung wird ein konfigurierter E-Mail-Account in MS Outlook benötigt)

Vorgeschichte

Bereits vor einigen Jahren bekam ich von einem Bekannten die Anfrage ob es möglich wäre eine Excel-Liste so zu erweitern, dass er aus dieser auch E-Mails an seine Kunden versenden könne. Nach kurzer Recherche war klar, dass das Versenden von E-Mails mittels VBA* kein großes Problem darstellt. Die größere Herausforderung bestand darin, dass in den zu versendenden E-Mails nicht nur vorgefertigter „Standard-Text“, sondern auch Inhalte aus verschiedenen Excel-Tabellenblättern automatisch eingefügt werden sollte. Da er diese Funktion in mehrere voneinander unabhängige Excel-Dateien integriert haben wollte, bot es sich an hierfür ein Modul zu erstellen, was mit „wenigen“ Handgriffen in eine bestehende Excel-Tabelle eingebaut werden kann. Dies war der Anfang des SLSS Excel-Mailer’s.

 

Funktionsumfang

Im Laufe der Zeit hat sich der Funktionsumfang des SLSS Excel-Mailers um so einige Funktionen erweitert. Das liegt mitunter daran, dass die neuen Funktionen den Bedienungskomfort erweitern und verbessern, als auch an dem Fakt, dass ich das Modul auch in andere Projekte integriert habe, für welche diese Funktionen sinnvoll waren und somit auch zum festen Bestandteil des Modules geworden sind. Der Versand der E-Mails erfolgt hierbei immer über den Microsoft Outlook*-Account des aktuell angemeldeten Benutzers / Rechners.

Mehr lesen

SLSS CANAnalyser

  • Entwicklungsstand: in Entwicklung (letzte Aktualisierung: 05.06.2021 – Release Version 1.0.0.2)
  • Veröffentlichungen: Version 1.0.0.2 hier und auf GitHub zum Download (Testphase) veröffentlicht
  • GitHub Repository: https://github.com/SeppHansen/SLSS-CANAnalyser*

 

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

Gehäuse für PS2 to Serial Converter

Beschreibung

Mit dem PS2TOSERIAL Converter ist es, wie der Name schon sagt, möglich eine PS2-Maus an den seriellen Anschluss (COM-Port), wie er bei älteren Computern vorhanden und damals der gängige Standard war, anzuschließen. Da das Converter-Board ohne Gehäuse geliefert wird, haben wir uns die Mühe gemacht und ein kleines Gehäuse dafür erstellt, welches wir hier gern allen Interessierten zur Verfügung stellen möchten. Viel Spaß beim Drucken wünschen euch Sebastian Langer und Martin Nemitz!

Mehr lesen

DIY – Frequenzgenerator (PWM)

Vorgeschichte

Meine Leidenschaft für die „Bastelei“ mit Micro-Controllern hat mittlerweile auch in meiner beruflichen Tätigkeit als Prüfstandstechniker Einzug gehalten. So ist innerhalb der letzten Jahre das eine oder andere „Helferlein“ für die Erleichterung unserer täglichen Arbeit und das Meistern von speziellen Mess- und Prüfaufgaben entstanden. Der Anstoß für die Entwicklung eines neuen Gerätes war dabei meist der einfache Fakt, dass für die Umsetzung der benötigten Messungen keine Hardware verfügbar, oder die verfügbare Hardware für die Aufgabe nicht genau passend war. Da dieser Umstand beim Testen von Einzelkomponenten oder Teilgruppen relativ häufig vorkommt, fand ich immer wieder neue Herausforderungen und konnte somit auch Dinge realisieren, welche ich so in dieser Art vorher noch nicht umgesetzt hatte. So war zum Beispiel meine erste CAN-Bus Anwendung eines dieser Bastelprojekte.

Ein weiterer großer Vorteil dieser „Eigenanfertigungen“ ist, dass ich die zum Betrieb benötigten Ein- und Ausgaben direkt an die von unseren Prüfständen zur Verfügung gestellten Eingangs- und Ausgangsschnittstellen anpassen kann. So wurde bei den meisten meiner „schwarzen Kästchen“ die Steuerung per analogem Eingangssignal im Bereich von 0V – 10V realisiert, während die Rückgabe der Einstell- und Messwerte meist per CAN-Bus erfolgte. Dies ist dem Umstand geschuldet, dass der Treiber des verwendeten Messsystems nur auf dem CAN-Eingang des Prüfstandes lesen, aber nicht senden kann.

 

Anforderung universell einsetzbarer Frequenzgenerator

In der Vergangenheit gab es immer wieder die Anforderung Magnetventile, Motoren oder andere elektrische Komponenten mit einer vorzugebenden Frequenz – Tastverhältniseinstellung, also per Pulsweitenmodulation* / PWM* (https://www.elektronik-kompendium.de/sites/kom/0401111.htm), betreiben zu können.

Da die Digitalausgänge unser Prüfstandshardware keine hohen Schaltströme zulassen, wurde für die Ansteuerung von elektrischen Bauteilen meist eine Kombination aus vorgeschaltetem Reed-Relais und nachgeschalteten Kfz-Last-Relais verwendet. Leider ließen sich mit dieser Kombination keine hohen Schaltfrequenzen realisieren (max. ca. 30Hz bis 50Hz), was dazu führte, dass für Schaltanforderungen mit höheren Frequenzen meist Fahrzeugsteuergeräte und Kabelbäume aufgebaut, und die Ansteuerung kompliziert über deren Software realisiert werden musste.

Meine erste Idee war, den Relaisverbund durch ein Metall-Oxid-Halbleiter-Feldeffekttransistor* (kurz: MOSFET) zu ersetzen, womit sich die Schaltfrequenz um ein vielfaches erhöhen lässt und einer direkten Ansteuerung nichts mehr im Weg steht. Da ich bereits für andere Schaltaufgaben MOSFETs verwendet hatte, passte ich eine dieser Schaltungen an die neuen Anforderungen an. Als wir diese Schaltung am Prüfstand testeten, stellten wir jedoch fest, dass mit den digitalen Ausgängen der Messkarten keine stabilen Frequenzsignale erzeugt werden konnten. Hierbei liegt das Problem jedoch weniger an der Hardware selbst, sondern eher an dem in der Prüfsoftware eingestellten Software-Takt, welcher bei höherer CPU-Auslastung ab und an ins Stocken geriet. Dies war bei der Ansteuerung eines Magnetventils hörbar und auch in den aufgezeichneten Messdaten sichtbar.

Da man hiermit keine vernünftigen Messergebnisse erzeugen konnte, kam ich auf die Idee, die Ansteuerung von Frequenz und Tastverhältnis über einen Micro-Controller zu realisieren. Dieser sollte auf Grund seiner internen Timer und der hardwarenahen Programmierung problemlos ein stabiles PWM-Signal erzeugen können.

Mehr lesen

Alexa-Skill für den Raspberry Pi mit Python

Vorgeschichte

Als Erweiterung für meine DIY-Hausautomatisierung* hatte ich schon längere Zeit den Wunsch, verschiedene Geräte auch per Sprachsteuerung ansprechen und steuern zu können. Da bei uns die Amazon Echo-Dots mittlerweile auch in fast jedem Raum Einzug gehalten haben, war die meiner Meinung nach perfekte Hardware eigentlich schon vorhanden. In meiner Vorstellung musste ich es daher „nur“ hinbekommen, dass die von Amazon übersetzten Sprachbefehle an meine Hausautomatisierung weitergeleitet und anschließend von mir per Script ausgewertet werden. Leider ist dies nicht ganz so einfach umzusetzen wie ich es mir gedacht habe.

Mehr lesen

Modellbau mit dem 3D Drucker

Vorgeschichte

Das man mit einem 3D Drucker mehr anfangen kann, als nur Gehäuse und Funktionsteile zu drucken, ist glaube ich landläufig bekannt. Durch die großen Online-Sammlungen an 3D Objekten hat man auf der einen Seite die Möglichkeit von Fahrzeugen über Häuser, Boote, Flugzeuge bis hin zu Einrichtungsgegenständen für Puppenhäuser, verschiedenste Objekte drucken zu können, ohne selbst das 3 Modell erstellen zu müssen. Auf der anderen Seite kann man natürlich auch noch nicht verfügbare Gegenstände per CAD-Software verkleinern und so ein maßstabsgetreues Abbild der realen Welt schaffen.

Da unser leitender Prüffeldmeister Ende Mai 2019 in seinen verdienten Ruhestand gegangen ist, wollten wir ihm zum Abschied ein Geschenk machen, welches ihn an seine Arbeit erinnert und seinen langjährigen Leistungen würdig ist. Da er am Entwurf und der Entwicklung eines unserer Prüfstände maßgeblich beteiligt war, hatten wir die Idee diesen Prüfstand* (https://patents.google.com/patent/DE102007057052B4) mit allem was dazu gehört nachzubauen. Eine Aufgabe, welche mir ca. 500 Stunden Arbeitszeit und einige graue Haare beschert hat.

Mehr lesen

Der Weg zum 3D Druck

Vorgeschichte

Nachdem ich schon länger elektrische Schaltungen bastelte, stand ich immer wieder vor ein und demselben Problem, irgendwo mussten die Schaltungen nach ihrer Fertigstellung untergebracht werden. So war ich ständig auf der Suche nach passenden Gehäusen. Zum Einsatz kamen bis zu diesem Zeitpunkt meist Abzweigdosen, Fertiggehäuse oder Kunststoffverpackungen (z.B. Ferrero Rocher oder auch Tic Tac). Das Problem dabei war meist, dass diese entweder zu hoch, zu breit, zu lang oder auf irgendeine andere Art nicht genau passend waren. Wollte man in diese Gehäuse dann noch irgendwelche Displays oder Schalter integrieren, war das nur mit dem Einsatz von Bohrmaschine, Schleifbock oder Dremel möglich und das Ergebnis nicht immer wie gewünscht. Aus diesem Grund fing ich Ende 2015 an nach einer Alternative zu suchen und landete recht schnell bei den 3D Druckern.

 

Der erste Drucker – Prusa I3 Hephestos

Mehr lesen