Forum: Mikrocontroller und Digitale Elektronik 12V KFZ Signalauswertung am Mikrocontroller


von Cash666 (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
das Thema der Auswertung von 12V Signalen im KFZ mit uC wurde ja schon 
hinlänglich geklärt und erklärt. Ich habe da trotzdem mal ne Frage bzw 
ne Problemstellung:
Anbei mal eine handgezeichnete Skizze vom Aufbau. Es soll das 
Blinkersignal vom Blinkerschalter für L und R blinken mit einem Arduino 
ausgewertet werden. Das Signal ist nicht gepulst, sonder einfach 12V bei 
eingeschaltetem Blinker.

Die Auswertung funktioniert, Problem ist nur das die Leitungen für L und 
R über die beiden Kontrollleuchten zusammen hängen, d.h. der uC erkennt 
immer L und R gleichzeitig, egal ob nur L oder nur R eingeschalten ist.
Setze ich LEDs anstelle der Kontrollleuchten ein, funktioniert alles 
super.
Klemme ich ne Last (zb. Lastwiderstand um die 500mA @12V) parallel zu 
den Optokopplereingängen, funktioniert es auch. Wird aber sau warm und 
das geht in der Anwendung nicht.

Meine Eingangsschaltung ist also etwas zu hochohmig...ich bekomme sie 
aber nicht niederohmig genug um die Trennung zwischen L und R sauber zu 
haben...dann fließen zu hohe Ströme am Optokoppler.

Hat jemand ne Idee wie ich das lösen könnte? Die Optos sollen zum Schutz 
vor den Eingängen bleiben. Die Kontrollleuchten haben meine ich je 2W.
Hoffe ich konnte das Problem angemessen darstellen.

Achja, der uC bekommt seine Vcc über einen DC/DC Wandler mit breitem 
Eingansspannungsbereich und ein paar Schutzorganen.

Danke und LG
Chris

von Cash666 (Gast)


Angehängte Dateien:

Lesenswert?

hier das Bild nochmal richtig herum...

von MaWin (Gast)


Lesenswert?

Cash666 schrieb:
> Hat jemand ne Idee wie ich das lösen könnte

Deine Schaltung sollte kein Problem haben, wenn die Kontrolllampen auch 
die echten Lampen sind, denn dann ist der uC Eingang am nicht-betätigten 
Blinker niederohmig über die Blinkerbirne mit Masse über den zentralen 
Schalter verbunden während der andere uC Eingang die 12V an der 
blinkenden Birne sieht.

An deinem Schaltplan sieht man nicht, was du nun mit der echten Birne 
falsch gemacht hast, weil du die einfach nicht eingezeichnet hast.

Deine Schaltung sollte halt auch dann klarkommen, wenn die 
Masseverbindung der Rücklichter mal wieder weggegammelt ist.

von Cash666 (Gast)


Lesenswert?

MaWin schrieb:

> Deine Schaltung sollte kein Problem haben, wenn die Kontrolllampen auch
> die echten Lampen sind, denn dann ist der uC Eingang am nicht-betätigten
> Blinker niederohmig über die Blinkerbirne mit Masse über den zentralen
> Schalter verbunden während der andere uC Eingang die 12V an der
> blinkenden Birne sieht.
>
> An deinem Schaltplan sieht man nicht, was du nun mit der echten Birne
> falsch gemacht hast, weil du die einfach nicht eingezeichnet hast.
>
> Deine Schaltung sollte halt auch dann klarkommen, wenn die
> Masseverbindung der Rücklichter mal wieder weggegammelt ist.

Problem ist, das die Kontrollleuchten für einen kurzen Moment über den 
zentralen Schalter von der Masse getrennt werden (im Rhythmus des 
sequentiellen Blinkers). Dann hab ich halt ne niederohmige Verbindung 
zwischen L und R.

Welche Birnen habe ich nicht eingezeichnet? Die Blinklichter also 
Solche? Ist an der Stelle egal weil sie die Versorgungsspannung im 
Original über eine andere Leitung bekommen und an Stelle des Arduino 
Eingangs im Original Relais hängen (ca 38Ohm) die diese dann jeweils 
nach L oder R durchschalten. Deswegen funtkioniert es auch wenn ich 
Lastwiderstände anklemme.

Danke für deine Antwort!

von Limi (Gast)


Angehängte Dateien:

Lesenswert?

Bezugspotential der Optokoppler ändern, wie im angehängten Bild. 
Allerdings ist dann die Schalterstellung nur während der Leuchtdauer 
bekannt.

von PICfan (Gast)


Lesenswert?

Dioden zwischen Kontrolleuchten und Masse?

Dann kann keinen Strom von L nach R und umgekehrt fließen.

MfG,
PICfan

von Cash666 (Gast)


Lesenswert?

Danke für den Tipp! Leider kann ich das nicht weil die Masseverbindungen 
Fahrzeugseitig so bleiben sollen, bzw es keine Option darstellt den Teil 
der Schaltung links der gestrichelten Linie zu verändern...
Ich denke da schon ne ganze Weile drauf herum und hab bis jetzt wie 
gesagt noch keine gute Lösung...

von Cash666 (Gast)


Lesenswert?

Hi PICfan....ja genau das hatte Ich ja schon durch den Einsatz von LED 
gemacht.
Ich habe vergessen Eingans zu Schreiben das die Schaltung links der 
gestrichelten Linie nicht verändert werden soll,da Fahrzeugseitig 
vorgegeben...
Sorry..

von Jim M. (turboj)


Lesenswert?

Cash666 schrieb:
> Problem ist, das die Kontrollleuchten für einen kurzen Moment über den
> zentralen Schalter von der Masse getrennt werden (im Rhythmus des
> sequentiellen Blinkers). Dann hab ich halt ne niederohmige Verbindung
> zwischen L und R.

Stimmt. Aber da ein Blinker normalerweise "an" hochkommt, sollte man den 
Fall "Beide Eingänge aktiv" (=Blinker aus) in Software abhandeln können.

Das per Hardware zu versuchen wäre mir im Auto zu störanfällig.

von Cash666 (Gast)


Lesenswert?

Jim M. schrieb:
> Stimmt. Aber da ein Blinker normalerweise "an" hochkommt, sollte man den
> Fall "Beide Eingänge aktiv" (=Blinker aus) in Software abhandeln können.
>
> Das per Hardware zu versuchen wäre mir im Auto zu störanfällig.

Habe ich auch schon drüber nachgedacht...aber wie soll der uC zwischen L 
und R unterscheiden wenn beide Eingänge Akiv sind? Zumal dieses Szenario 
eigentlich auch das Warnblinken triggert.
Wie gesagt, auf der L und R Leitung ist kein gepulstes 12V 
Blinkersignal, sondern nur „Blinker an = 12V“ und „Blinker aus = 0V“.
Lg

von Michael R. (mr-action)


Lesenswert?

Naja, du musst halt über die Zeit gehen...

Beispiele:
- bisher beide aus => L an und R aus => Blinker links an...
- bisher Blinker Links an => L an und R an => Blinker links aus / 
Warnblinker
- bisher Blinker Links aus oder Warnblinken => länger wie 1sec => 
Warnblinken
- bisher Blinker links aus oder Warnblinken => L an und R aus => Blinker 
links an...

Also letztendlich hast halt eine Übersetzung auf das, was das Glühobst 
grade außen am Auto macht - im schlimmsten Fall halt um 1 sec 
versetzt...
Aber wie oft wechselt man schon zwischen normal blinken und Warnblinken 
hin und her? Im Regelfall macht man ja nur eins von allen dreien direkt 
an und das kann sauber erkannt werden.

von Cash666 (Gast)


Lesenswert?

...Über die Zeit...
Ich überlege immernoch...ich komm aber nicht ganz drauf was du meinst.
Angenommen ich schalte auf Links blinken...dann liegen ja 12V an beiden 
Eingängen an und beide sind somit aktiv. Wenn ich dem uC sage "L und R 
aktiv = nicht blinken" dann passiert halt nichts. Auf was soll ich ne 
Sekunde warten?

Danke für deine Anregungen..ich denke noch drauf rum....

von Michael R. (mr-action)


Lesenswert?

Du sagtest oben, das der Schalter ganz links in deiner Zeichnung den 
Takt für die Blinker macht und wenn der geschlossen ist, kannst du ja 
erkennen, welche Seite leuchtet und welche nicht... Nur wenn er geöffnet 
ist weißt du nicht, was grade passiert und die Zeit musst du halt 
aufgrund des bisherigen Signals "raten"...

von batman (Gast)


Lesenswert?

Per Software einfach die Signalphasen ignorieren, in denen L=R=1 ist. 
Das entspricht der des offenen Blinkrelaiskontakts.

von Ach Du grüne Neune (Gast)


Angehängte Dateien:

Lesenswert?

Auch wenn Du sagst, dass links von der gestrichelten Linie nicht 
eingegriffen werden darf, aber mit zwei starken Schottky-Dioden hättest 
Du eine Entkopplung zwischen den beiden Kanälen.

von Michael R. (mr-action)


Lesenswert?

@batman: Die kann er nur ignorieren, wenn er Warnblinken nicht erfassen 
will.

von batman (Gast)


Lesenswert?

Ja, das war auch in der Aufgabe nicht gefragt und laut Zeichnung gar 
nicht vorhanden.
Um zusätzlich Warnblinken zu erfassen müßte die Auswertung auf beide 
Blink-Phasen erweitert werden (1.Phase L=R=1, 2.Phase L=R=1 für WB / L=1 
R=0 f. links usw..), simple Programmierlogik nach Zustandsdiagramm.

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.