Microcontroller: Wie misst man, ob ein Stromkreis geschlossen ist oder nicht?

2 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Wenn du nur einen Blinker bauen willst und sowieso einen µC hast, dann gibt es doch nichts leichteres, als damit einen Blinker zu machen. Du kannst einfach einen Ausgang für 1 Sekunde (oder welche Zeit auch immer du haben willst) auf High und dann wieder für 1 Sekunde auf Low zu schalten.

Oder versteh ich jetzt dein Problem nicht ganz???

Falls du für Fehlersuche etc nur messen willst, ob der Stromkreis geschlossen ist, dann mess doch einfach am relais selber den durchgang.


MrRayman 
Beitragsersteller
 26.08.2016, 19:56

Also ich habe eigentlich das Problem:

Der Blinkerstromkreis besteht eben aus einen Schalter und einen Schalter. Wenn der Schalter gedrückt wird, ist der Stromkreis geschlossen. Das Blinken lässt sich auch recht leicht realisieren.

Nun möchte ich, dass die Blinker immer genau dann aufleuchten, wenn ich den Blinkerschalter drücke. Also das Relais soll nicht ständig geschlossen und geöffnet werden.

Der Blinker soll auch aufleuchten, wenn zwei mal ganz kurz hintereinander blinke. Also den Blinkerstromkreis einmal kurz unterbreche (Dies kommt vor, wenn man erst rechts und dann sofort links blinkt).

Ich hoffe es ist jetzt etwas deutlicher geworden. Aber danke für deine Bemühung.


strol  26.08.2016, 20:35
@MrRayman

Hab ich das jetzt richtig verstanden: Du willst EINEN Blinker, der immer leuchtet und wenn du den Schalter betätigst anfängt zu blinken? Du hast aber schon ein Relais mit einem Wechselkontakt?

Dann mach deinen Schaltkreis 1 einfach nur mit dem Öffner-Kontakt deines Relais und deiner Lampe.

Den Schaltkreis 2 machst du einfach so, dass du zwischen den µC und den Spulenanschluss des Relais deinen Schalter klemmst.

Dann leuchtet deine Lampe immer, wenn der Schalter nicht betätigt ist, und solange der Schalter betätigt ist, blinkt sie. Je nachdem wann du den Schalter umlegst, kann es dann sein, dass dann dein erstes Blinken etwas kürzer, als die anderen sind, aber wenn das nichts ausmacht ist es ja egal.

Alternativ könntest du natürlich den Schalter direkt auf einen Eingangspin des µC geben und dann dadurch erst das Blinken deines µCs starten.

strol  26.08.2016, 20:39
@strol

Hab das links, rechts überlesen. Also du brauchst zwei verschieden Blinker. Entweder machst du dann, die erste von mir erwähnte Methode mit einem Wechselschalter, der entweder links oder rechts macht, aber dann sind wir langsam an einem Punkt, wo alles Softwaremäßig fast einfach ist. An was fehlts da im Programm?

MrRayman 
Beitragsersteller
 26.08.2016, 21:02
@strol

Nein, das Problem ist nicht so grundlegend:

Ich weiß, wie ich das Relais steuere. Mit diesem werde ich auch das Blinken steuern. Ich weiß auch, wie ich das programmiertechnisch lösen will.

Leider fehlt mir ein Messwert dazu: Ich will wissen, ob der Blinkerknopf gedrückt ist oder nicht. Leider fließt durch ihn teilweise ein Strom an (Relais geschlossen -> Blinker leutet) und teilweise eben nicht (Relais geöffnet ->Blinker leutet nicht). Also kann der Schaltkreis vom Relais und vom Blinkerknopf geöffnet und geschlossen werden.

(Einfacher wäre es natürlich, den Schalter direkt am Controller anzuschließen. Hier müsste ich aber den Kabelbaum stark verändern. Dies will ich umbedingt vermeiden. Hier der Kabelbaum: http://www.a-k-f.de/moser/sr50c.pdf)


MrRayman 
Beitragsersteller
 26.08.2016, 21:14
@MrRayman

Das zu ersetzende Bauteil wäre die ELBA.

Um noch etwas zum Hintergrund des Projektes zu sagen: Es gibt die Elektrische Lade und Blinkereinheit (ELBA) auch als Ersatzteil. Ich versuche aber einen Digitalen Tacho verbauen, der vom Microcontroller gesteuert werden soll. Der grobe Plan für das Programm steht schon. Die Ladeschaltung ist auch schon ausgedacht, jetzt muss ich nur noch die Blinker kontrollieren.

Ich hoffe jetzt ist das ganze Problem etwas übersichtlicher. Danke für die Lösungsvorschläge.

strol  27.08.2016, 14:27
@MrRayman

Reicht es dir nicht aus, wenn du das Blinken softwaremäßig abfragst?

Wenn ich jetzt gerade nichts übersehen hab, dann schalten sämtliche Relais 12V und nicht Masse durch. Das bedeutet, dass wenn du deinen Kabelbaum um ein Kabel erweiterst, kannst du das ganze mit dem Mikrocontroller messen. Du musst einfach mit einem Kabel den Ausgang des Relais mit deinem µC verbinden und an diesen Pin des µC noch einen Pull-down Widerstand anbringen. (Ich würde da einfach mal 100kOhm nehmen)

Wenn dann das Relais durchgeschaltet ist, liegen an der Stelle 12V an und der Mirkocontroller erkennt das als High-Signal und wenn das Relais nicht durchgeschaltet ist, liegen über den Pull-down Widerstand 0V an.

Ich weiß jetzt nicht, was für eine Eingangsspannung dein µC verträgt. Falls er nur 5V will, musst du halt eben noch einen Spannungsteiler vorschalten.

MrRayman 
Beitragsersteller
 02.09.2016, 21:20
@strol

Danke für die Hilfe, ich habe leider den letzten Kommentar überlesen.

Das Problem ist aber, dass nicht den Zustand des Blinkerschalters erfassen kann, wenn das Relais geschlossen ist. Dann liegt dort doch auch keien Spannung an oder?

Notfalls würde ich auf diese Erkennung auch verzichten, ist ja eigentlich nur ein Spielerei. Vermutlich würde ich das dann ähnlich machen, wie Sie es vorgeschlagen haben.

jup am ausgang relais druchgang messen wenn ja dann ja wenn nein dann nein

wenn du prüfen willst ob es schaltet durchgangstester rann und a1 und a2 mit spannung versorgen und von hand zu fuß blinken