Dachmodul erster Prototyp

Alle eure Veränderungen und Mods kommen hier rein!

Moderator: Grauzone

Benutzeravatar
Viper
Administrator
Beiträge: 1358
Registriert: Montag 13. Juni 2016, 21:16
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 562 Mal
Danksagung erhalten: 432 Mal

Dachmodul erster Prototyp

Beitrag von Viper »

Ich habe die Beiträge mal in ein neues Thema verschoben damit nicht die Bestellung des X-CAR Dachmoduls mit der Entwicklung eines eigenen vermischt werden.

So ich hatte heute ein wenig Zeit und habe mal einen Prototyp für ein Dachmodul entwickelt.
Der Prototyp läuft mit einem Arduino Nano, es fehlt noch die Auswertung und Manipulation des Geschwindigkeitssignals.

Ich habe auch ein Video von der Funktion gemacht. Passwort ist die Kurzbezeichnung für den Crossfire mit 2 Großbuchstaben.

Benutzeravatar
Viper
Administrator
Beiträge: 1358
Registriert: Montag 13. Juni 2016, 21:16
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 562 Mal
Danksagung erhalten: 432 Mal

Zweiter Prototyp

Beitrag von Viper »

So ich habe meine Prototypschaltung des Dachmoduls um die Frequenzanalyse erweitert. Was ich im Video vergessen haben zu erwähnen, das Modul mit der Digitalanzeige ist ein Frequenzgenerator (biligste China Version 5€ :D deshalb ist das Signal auch nicht ganz so schön aber dafür völlig ausreichend) und der LCD Bildschirm ist mein mobiles Oszilloskop auch nicht das genaueste aber um irgend was zu analysieren reicht es.
Was ich noch erwähnen möchte die Hardware welche das Dachmodul simuliert kostet keine 10€ (aus China) ,zwink,

Jetzt müsste ich nur noch mal in meinem Toaster die Signale genau analysieren und mein jetziges Dachmodul stilllegen. Ostern habe ich vielleicht Zeit dazu.

Hier noch ein Video, Passwort wieder die Kurzbezeichnung des Crossfire (zwei Großbuchstaben).

Benutzeravatar
Viper
Administrator
Beiträge: 1358
Registriert: Montag 13. Juni 2016, 21:16
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 562 Mal
Danksagung erhalten: 432 Mal

Beitrag von Viper »

Da ich im Zuge meiner heutigen Testmessungen das X-CAR Dachmodul eh entfernen musste habe ich es auch gleich mal geöffnet, so sieht es von innen aus:
Viper_Dachmodul005.JPG
Wie man sieht sind dort nicht viele Bauteile verbaut, die Steuerung übernimmt ein Microchip PIC16F687 hier mal die Spezifikationen des Herstellers:
► Text anzeigen
Einen LE50 Stpannungsregler, welcher die 12-15V Spannung des XF in Microcontroller verträgliche 5V wandelt.
Und einige K6C Transistoren, Dioden und Kondensatoren.

So sah mein heutiger Testaufbau aus :D
Viper_Dachmodul009.JPG
Ein Steckbrett mit Arduino-Nano auf dem ein Programm zur Frequenzmessung lief. Mein OZI um die Signale zu Visualisieren, mein Multimeter um die Spannungen zu bestimmen.
Gut ist, dass alle Spannungen schon im Mikrocontroller freundlichen 5V vorliegen so braucht man diese nicht zu wandeln ;up;
Bei meinen Frequenzmessunegn bin ich auf die gleichen Ergebnisse gekommen wie sie hier schon beim EasyRoof vom SLK ermittelt wurden.
Heißt:
Am Tachosignal an Pin 74 (Raddrehsensor) liegen 6Hz pro 1hm/h an heißt bei 10km/h liegen 60Hz, bei 50km/h 300Hz usw. an.
An Pin 56 liegt das ABS-Regelsignal an welches 3Hz beim Stillstand und ab 7km/h auf 21Hz wechselt und damit das ABS in den Regelzustand versetzt.
Heißt um das Dach auch bei höheren Geschwindigkeiten öffnen zu können muss man Stillstand vortäuschen und statt des 21Hz Signales ein 3Hz vortäuschen und das Tachosignal unterbrechen.
Ich habe dann noch den Dachschalter durchgemessen, es liegen bei Nichtbetätigung 5V an, beim Drücken von "Schließen" wird einfach gegen Masse geschaltet was die Spannung dann auf 0V zieht und beim Drücken von "Öffnen" ist dann der 200Ohm Widerstand dazwischen was eine Spannung von ca. 1V entspricht.

Dann habe ich noch Stenzels Vermutung, dass an PIN9 des Dach-Steuergeräts das Geschwindigkeitssignal anliegt überprüft.

Das Modul sitzt im Kofferraum auf der linken Seite:
Viper_Dachmodul008.JPG
Hier noch mal näher:
Viper_Dachmodul007.JPG
Und hier geöffnet:
Viper_Dachmodul001.JPG
Leider steht auf dem Stecker keine Pinbelegung so das ich mich nach der Kabelfarbe gerichtet habe, ich hoffe das RD/YL heißt Rot mit Gelben Streifen.
Auf diesem Kabel konnte ich aber nur ein 100Hz Signal Messen, Geschwindigkeitsunabhängig und auch nach dem Ausschalten der Zündung ging es erst nach einiger Zeit auf 0Hz. Meine Vermutung ist, dass es ein Signal ist welches an alle Steuergeräte geht und wenn sich die Steuergeräte schlafen legen wird das Signal ausgeschaltet.

Bedeutet, das ein Verbauen des Moduls in den Kofferraum leider nicht möglich ist und man wohl genauso vorgehen muss wie bei dem Modul von der Fa. X-CAR.

Und ich habe jetzt alle Daten zusammen und kann damit beginnen das Ganze in Hardware nachzubilden, wie es meine Zeit erlaubt.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Benutzeravatar
Viper
Administrator
Beiträge: 1358
Registriert: Montag 13. Juni 2016, 21:16
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 562 Mal
Danksagung erhalten: 432 Mal

Re: Dachmodul erster Prototyp

Beitrag von Viper »

So wieder einen Schritt weiter, heute musste meine Entwicklung den ersten Test im Auto überstehen.

Dies sah dann so aus:
Viper_Dachmodul010.JPG
Zuerst die gute Nachricht, die Programmierung funktioniert soweit ich dies testen konnte.
Leider gibt es ein Problem mit den 3Hz "Standby" Signal (und vermutlich auch mit dem Geschwindigkeitssignal) welches den ABS-Modul eine Geschwindigkeit unter 6km/h anzeigt.
Ich habe Transistoren als Schalter verwendet, entweder ist der Spannungsabfall am Transistor zu groß oder (was ich aber eher nicht vermute) das Signal wird verfälscht wenn es durch den Kondensator durchgeleitet wird.
Vielleicht kann sich einer von den Elektronikexperten hier mal dazu äußern. Verwendet habe ich einen BC547 (weil der noch bei mir rum lag) im X-Car-Modul werden K6C welche dem Typ BC817-40 entsprechen verwendet.
Ich werde diesen Typ bestellen und schauen ob es damit besser klappt.
Angeschlossen habe ich den BC547 so (die Diode und den 470Ohm Widerstand habe ich natürlich weg gelassen) :
Bild

Als Schaltspannung dienen die 5V des Arduino.

Was ich so testen konnte war im Stand das Dach mit meinem Testaufbau öffnen und Schließen, was einwandfrei funktioniert. Also muss ich nur das "Problem" mit den 3Hz und dem Geschwindigkeitssignal lösen, will aber ungern mit Relais arbeiten.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Benutzeravatar
Crossmire
Administrator
Beiträge: 1626
Registriert: Montag 20. Juni 2016, 04:54
Vorname: Udo
Auto: _QP_
Wohnort: bei Rottweil
Hat sich bedankt: 428 Mal
Danksagung erhalten: 980 Mal

Re: Dachmodul erster Prototyp

Beitrag von Crossmire »

Hallo Andre,

Du bist ja richtig voll dran. :ilike:
Ich hatte zwischenzeitlich meinen Raspi kurz OS mässig geerdet.
Habe ihn aber zwischenzeitlich wieder neu geflasht und mit dem zusätzlichen CAN Modul kann es jetzt weiter gehen :igrin:
Für Funktionseinheiten im Crossie hatte ich mir auch entweder Atmel oder Microchip (wie im aktuellen Dachmodul) angedacht.
Diese uC brauchen wesentlich weniger Strom als der Raspi. Aber zum entwickeln ist der ideal.

Die Transistorschaltung interpretiere ich so dass Du das Signal am Kollektor abgreifst.
Hast Du das 3Hz Signal einmal mit dem Skope angesehen.
Ich vermute dass die Schaltflanke gut aussieht wenn der Transistor eingeschaltet wird, also nach Masse schaltet.
Aber nicht so gut wenn er wieder ausgeschaltet wird, das Signal also wieder nach Plus wechseln soll.
Möglicherweise benötigt man einen Pullup Widerstand um dies zu verbessern, falls es bei der Einzeltransistor Schaltung bleiben soll.
Wenn es besonders gut werden soll, dann nimm eine Totem-Pole Schaltung. Mit bipolaren oder MOS Transistoren.
Im Beispiel die Transistoren T2...T4. Man muss die nur etwas umdimensionieren damit sie auch unterhalb 14V sicher funktioniert.
Eine Relaisschaltung macht natürlich keinen Sinn.

Etwas vergleichbares siehst Du auch an dem geöffneten aktuellen Dachmodul. Und auch einen kleinen Schaltungsfehler.
Deshalb ist dort die Diode quer eingelötet um den Fehler wieder auszubügeln.
Aber das ist nichts ungewöhnliches bei Elektronik :igrin:


Grüße
Udo
Ich habe schon mein H-Kennzeichen :irolleyes:
Benutzeravatar
Viper
Administrator
Beiträge: 1358
Registriert: Montag 13. Juni 2016, 21:16
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 562 Mal
Danksagung erhalten: 432 Mal

Re: Dachmodul erster Prototyp

Beitrag von Viper »

Hallo Udo,

schön, dass dein Raspi Projekt auch Fortschritte macht. Bin echt gespannt wie viel über den CAN-Port gesteuert wird.
Ja du hast es richtig gesehen, ich schalte das 3Hz/27Hz Signal vom Kollektor zum Emitter durch solange das Dachnodul nicht benötigt wird, wenn man das Dachmodul betätigt wird überprüfe ich ob ich unter der erlaubten Geschwindigkeit liege und schalte dann das Geschwindigkeitssignal (mit der anderen Transistorschaltung) und das 3Hz/27Hz Signal ab und ein vom Arduino erzeugtes 3Hz Signal auf. Das Dachmodul von X-Car schaltet einfach immer unter 60km/h das Geschwindigkeitssignal ab was dann z.B. Probleme bei der Scheibenwischersteuerung erzeugt. Wenn man z.B. bei Regen über 60km/h fährt und der Scheibenwischer auf Stufe 1 läuft wird er bei unterschreiten von 60km/h auf Intervall geschaltet weil das Dachmodul das Geschwindigkeitssignal trennt und das Steuergerät meint das Auto würde stehen.

Dein Beispiel mit der Totem-Pole-Schaltung habe ich aber nicht verstanden. Warum brauche ich 3 Transistoren um einen Schalter zu simulieren ,grübel,
Ich kenne noch die Darlingtonstufe, wenn die Spannung an der Basis nicht ausreicht damit zwischen Kollektor und Emitter genug Spannung durch geht.
Bild
Da brauche ich nur 2 Transistoren für.
Ich habe nun Transistoren vom Typ BC817K-40 bestellt welche auch in deinem zweitem Beispiel und auf der X-Car-Platine verwendet werden bestellt und hoffe das Problem damit zu lösen.
Benutzeravatar
Crossmire
Administrator
Beiträge: 1626
Registriert: Montag 20. Juni 2016, 04:54
Vorname: Udo
Auto: _QP_
Wohnort: bei Rottweil
Hat sich bedankt: 428 Mal
Danksagung erhalten: 980 Mal

Re: Dachmodul erster Prototyp

Beitrag von Crossmire »

Bei der 'Totem' Schaltung sind zwei aktive Schalter, einer für den Aus und einer für den Ein Zustand, vorgesehen.
Dadurch erreicht man kurze Schaltzeiten, geringe zeitliche Signalverfälschungen und geringe Pegelfehler.

Bei der Einzeltransistorschaltung wird einer der Pegel durch einen Widerstand erzeugt.
Der Strom durch diesen Widerstand hat einen Spannungsfall zur Folge und der Schaltpegel am Ausgang ist entsprechend verfälscht.
Wird der Spannungsfall zu gross, dann erkennt der uC keinen Ein Zustand mehr.
Weiter führt der Widerstand im Zusammenspiel mit einem nachfolgenden Kondensator zu einer 'Zeitverschiebung'.
Das geschaltete Signal wird dadurch verfälscht und der uC könnte dadurch eine falsche Frequenz des Signals ermitteln.

Wir berechnen am besten beide Varianten und können dann testen was hinreichend gut funktioniert.

Grüße
Udo
Ich habe schon mein H-Kennzeichen :irolleyes:
Knuffi86
Verifizierter User
Beiträge: 71
Registriert: Dienstag 5. Juli 2016, 13:45
Vorname: André
Auto: SRT6 Coupe
Wohnort: Bamberg
Hat sich bedankt: 5 Mal
Danksagung erhalten: 9 Mal

Re: Dachmodul erster Prototyp

Beitrag von Knuffi86 »

Hmm, ohne deinen Eifer bremsen zu wollen: Das Problem wird durch das ersetzen des Transistors nicht behoben werden. Dazu sind die Daten der beiden einfach zu aehnlich - insbesondere da du sie in einer extrem langsamen Schaltanwendung benutzt.

Was ich zunaechst mal machen wuerde: Den Vorwiderstand (47k in deinem Plan) deutlich kleiner. Eher 4k7.
Der 470Ohm Pullup sollte drin bleiben; die Diode kannst du natuerlich weglassen. Eine Gegentaktstufe (oder auch Totem-Pole-Schaltung) brauchst du wahrscheinlich nicht unbedingt. Die braucht's eher, wenn richtig schnell oder aber hohe Last geschaltet werden soll.

Ich habe allerdings Verstaendnisschwierigkeiten, was die 9V Batterie und den erwaehnten Kondensator angeht: "Ich habe Transistoren als Schalter verwendet, entweder ist der Spannungsabfall am Transistor zu groß oder (was ich aber eher nicht vermute) das Signal wird verfälscht wenn es durch den Kondensator durchgeleitet wird."

Vielleicht kannst du mal in einer kleinen Handkritzelei zusammenfassen, was nun wirklich wo haengt. Das Problem sollte sich loesen lassen.


VG
André
Benutzeravatar
Viper-666
Moderator
Beiträge: 796
Registriert: Montag 13. Juni 2016, 22:19
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 474 Mal
Danksagung erhalten: 212 Mal

Re: Dachmodul erster Prototyp

Beitrag von Viper-666 »

Hallo André,

die 9V-Batterie ist nur vom Beispielbild, wo ich mir die Schaltung "geklaut" habe. Wie schon gesagt, ich bin Hobbyelektroniker und eine Berechnung der Widerstände übersteigt mein wissen.
Aber zum Verständnis will ich eh noch einen Schaltplan bzw. Steckbrettaufbau mit der Software "Fritzing" erstellen, die ist sehr laienfreundlich :D

Zur Zeit will ich mit den Transistoren auch noch keine Frequenzen erzeugen, sondern sie arbeiten wirklich nur als Schalter welche die vom Crossfire-Steuergerät bzw. Radsensor erzeugte Frequenz durchschalten oder blocken.

Ich vermute aber, dass ich das vom Anduino erzeugte 3Hz Siganal doch von einem Transistor "nachbilden" muss da die 5V Spannung vom Arduino wahrscheinlich nicht reichen werden und ich dann einfach 12V vom Arduino getaktet durch den Transistor schalten muss.
Aber ob man bei 3Hz schon eine Totem-Schaltung braucht?
Andere Frequenzen brauche ich nicht erzeugen da ich ja beim Betrieb des Dachmoduls, das Geschwindigkeitssignal eh bei 0 km/h was 0Hz entspricht haben will und dann nur über den Transistor das vom Radsensor erzeugte Signal blocke.
Benutzeravatar
Crossmire
Administrator
Beiträge: 1626
Registriert: Montag 20. Juni 2016, 04:54
Vorname: Udo
Auto: _QP_
Wohnort: bei Rottweil
Hat sich bedankt: 428 Mal
Danksagung erhalten: 980 Mal

Re: Dachmodul erster Prototyp

Beitrag von Crossmire »

Guten Abend,

hier ist die Schaltungsberechnung für einen Einzeltransistor.
Die Variation zeigt die Simulation über den Temperaturbereich von -25 bis +80 Grad C
und den Batteriespannungsbereich von 8 bis 15 V, bei einer Frequenz von 2 kHz.
Die Last der Steuereinheiten habe ich einfach geschätzt, weil ich absolut keine Informationen dazu fand.

grün = Ansteuersignal des Arduino
rot = Eingangssignal am Lastpunkt (C1)
pink = Belastung des Widerstands R1

Ergo - sollte funktionieren.

Gute Nacht
Udo

Einzeltransistorschaltung.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Ich habe schon mein H-Kennzeichen :irolleyes:
Knuffi86
Verifizierter User
Beiträge: 71
Registriert: Dienstag 5. Juli 2016, 13:45
Vorname: André
Auto: SRT6 Coupe
Wohnort: Bamberg
Hat sich bedankt: 5 Mal
Danksagung erhalten: 9 Mal

Re: Dachmodul erster Prototyp

Beitrag von Knuffi86 »

Das funktioniert sicher. Dass direkt am Eingang des Stg. direkt 10nF haengen, ist gar nicht mal so wahrscheinlich. Insofern werden die Flanken eher noch steiler. Wenn du schon ein Oszi hast, kannst du auch einfach mal direkt auf der Leitung messen. Das Xcar Modul sieht allerdings nicht aus, als taeten die da etwas gravierend abweichendes.

Ebenfalls gute Nacht!

VG
André
Benutzeravatar
Viper
Administrator
Beiträge: 1358
Registriert: Montag 13. Juni 2016, 21:16
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 562 Mal
Danksagung erhalten: 432 Mal

Re: Dachmodul erster Prototyp

Beitrag von Viper »

Hallo Udo,

danke für die Ausldgung ;up;
Du hast es ja jetzt für den BC547 gerechnet, das X-Car und das EasyRoof verwenden aber beide BC817-40 welche wenn ich das richtig verstanden habe extra für Frequenzschaltungen gebaut werden, wären die nicht besser geeignet?
Benutzeravatar
Crossmire
Administrator
Beiträge: 1626
Registriert: Montag 20. Juni 2016, 04:54
Vorname: Udo
Auto: _QP_
Wohnort: bei Rottweil
Hat sich bedankt: 428 Mal
Danksagung erhalten: 980 Mal

Re: Dachmodul erster Prototyp

Beitrag von Crossmire »

Bitte gern. Eine Umstellung auf den BC817 nur eine Minutensache.
Das frequenzbegrenzende Element ist nicht der Transistor sondern die Kombination aus Widerstand R1 und Kapazität C1.
Diese wird aus Kabelkapazitäten und Filterkondensatoren in den Steuerrechnern gebildet.
Hier hilft ein Ersatz des R1 durch einen Transistor, also dem Totem, der dann auch die andere Flanke deutlich schneller schaltet.
Aber das müssen wir nicht, wir sollten mit einem Transistor auskommen.

Bis dann
Udo

BC817_40.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Ich habe schon mein H-Kennzeichen :irolleyes:
Benutzeravatar
Viper-666
Moderator
Beiträge: 796
Registriert: Montag 13. Juni 2016, 22:19
Vorname: Andre
Auto: Chamäleon Roadster
Wohnort: Werne
Hat sich bedankt: 474 Mal
Danksagung erhalten: 212 Mal

Re: Dachmodul erster Prototyp

Beitrag von Viper-666 »

Hallo Udo,

das ging ja wirklich schnell :D wenn ich mir die beiden Simulationen anschaue sind die Aufbau her (bis auf den Transistor) identisch aber der BC817 scheint die Absteigende Flanke einen Tick genauer hin zu bekommen.

Ich hatte mir gestern noch mal den Schaltplan vom EasyRoof angeschaut. Dabei sind mir 2 Dinge aufgefallen. Erstens benutzt er ein Wechselrelais um die Frequenzen zu schalten (war auch meine erste Idee :D ) aber was mich zweitens mehr verwundert, er schaltet die Frequenzen welche vom Steuergerät kommen beim benutzen des Daches über einen 1KOhm Widerstand gegen +12V.
Bei meiner Schaltung werden die einfach nur "tot" gelegt also Quasi als wenn das Kabel durchgeschnitten ist. Kann sich einer von euch einen Reim darauf machen was der Sinn ist diese über den Widerstand auf +12V zu legen?
Benutzeravatar
Crossmire
Administrator
Beiträge: 1626
Registriert: Montag 20. Juni 2016, 04:54
Vorname: Udo
Auto: _QP_
Wohnort: bei Rottweil
Hat sich bedankt: 428 Mal
Danksagung erhalten: 980 Mal

Re: Dachmodul erster Prototyp

Beitrag von Crossmire »

Guten Morgen,

auch das ist jetzt eine schnelle Sache. Wir schneiden den 1,5 k Pullup Widerstand raus.
Eine kleine zusätzliche Anpassung, sonst wird das Ergebnis zu extrem.
R2, der den internen Pullup einer Empfangsschaltung darstellt, den nehmen wir zur Darstellung etwas herunter.

Das Signal wird wesentlich schlechter, es kommt gar nicht mehr richtig hoch.
Der Empfänger wird ein solches Signal nicht mehr richtig oder gar nicht mehr erkennen können.
Der niederohmigere Pullup R1 ist bei einem Einzeltransistor essentiell, wenn höhere Kapazitäten mit im Spiel sind.
Ohne die Kapazitäten spielt es keine Rolle, wie das zweite Bild zeigt. Aber die sind mit Sicherheit im System vorhanden.
Vermutlich hat es deshalb beim Versuch auch nicht richtig geklappt.
OhnePullup.jpg
OhneKap.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Ich habe schon mein H-Kennzeichen :irolleyes:
Antworten