Hallo zusammen, ich hätte eine Frage an das Forum: Ich möchte mir gerne einen Zündunterbrecher für das freiprogrammierbare Motorsteuergerät bauen. Dabei habe ich auf der Schaltgabel H-Schaltung (Gangwahlhebel) ein Potentiometer zur Verfügung. Ich möchte nun eine kleine Schaltung entwerfen, die mir einen Pin vom STG immer für z.b 1s auf GND schaltet sobald ein Gangwechsel durchgeführt wird. D.h. sobald sich die Potentiometerstellung minimal ändert (egal ob Drehung nach links oder Drehung nach rechts = Hoch- bzw. Runter schalten) sollte die Schaltung den steigenden oder fallenden Spannungsverlauf erkennen und einen Ausgang kurzzeitig aktivieren bzw. auf GND schalten! Wenn der 1. Gang eingelegt ist, messe ich z.b. eine Spannung von 2,0V beim Hochschalten auf den 2.ten Gang ändert sich die Spannung auf 4,0V, beim Hochschalten auf den 3.ten Gang ändert sich die Spannung auf 2,0V, beim Hochschalten auf den 4.ten Gang ändert sich die Spannung wieder auf 4,0V !!! Es handelt sich dabei um eine kleine Drehscheibe die immer um ca. 45° nach links und 45° nach rechts gedreht wird. Bin über jede Hilfe dankbar! Vielen Dank im voraus, grüße Michael
Michael schrieb: > Ich möchte nun eine kleine Schaltung > entwerfen, die mir einen Pin vom STG immer für z.b 1s auf GND schaltet > sobald ein Gangwechsel durchgeführt wird. Dabei handelt es sich um mehrere Aufgaben, die auch mit mehreren Teilschaltungen gelöst werden müssen. Pegelwechsel detektiert man am besten mit Komparatoren(-ICs), wobei du für steigende und fallende Flanken je einen brauchst. Mit dsem Ausgang dieses Komparators steuerst Du ein Monoflop, welches den 1s-Impuls erzeugt. Das kann man auch mit einem Komparator aufbauen. Im Endeffekt brauchst Du ein Vierfach-Komparator-IC plus ein bisschen "Hühnerfutter".
Dafür gibt es einfachere Lösungen. Du willst eine Schubabschaltung bauen? Kenne den Motor nicht, aber Zündung unterbrechen ist eine ganz schlechte Idee. Die Begrenzer moderner KFZ Motoren unterbrechen Sprit, nie Zündung. Weil unverbrannter Restsprit über früher oder später den Katalysator in den Jordan haut. Klopfen ist auch ein Thema. Ansonsten ist die Schaltung mit einem Arduino o.Ä. ein Klacks.
Wow, vielen Dank für die rasche Antwort. Bevor ich die Frage hier im Forum online gestellt habe, habe ich mich mal umgesehen. Mein erster Ansatz war auch eine Schaltung mit Komparatoren. Ich bin ein Elektronik interessierter Laie, kann zwar einen Lötkolben richtig herum halten, im Motorsteuergerät programmieren, mir fehlt jedoch leider das nötige KnowHow um so eine Schaltung zu entwerfen. Wie könnte so eine Schaltung aussehen? Vielen Dank im Voraus! Philipp G. schrieb: > Dafür gibt es einfachere Lösungen. Du willst eine Schubabschaltung > bauen? > > Kenne den Motor nicht, aber Zündung unterbrechen ist eine ganz schlechte > Idee. Die Begrenzer moderner KFZ Motoren unterbrechen Sprit, nie > Zündung. > > Weil unverbrannter Restsprit über früher oder später den Katalysator in > den Jordan haut. Klopfen ist auch ein Thema. > > Ansonsten ist die Schaltung mit einem Arduino o.Ä. ein Klacks. Nö, hat mit dem gar nichts zu tun - Fahrzeug, Motor und Getriebe werden im Rennsport eingesetzt. Schaltung und Trigger werden bei einem sog. FlatShift /PowerShift (Schaltvorgang bei Volllast) bei sequentiellen Getriebe verwendet! Hier wird die Zündung kurzzeitig unterbrochen sobald ein neuer Gang eingelegt wird (unabhängig vom Trigger ist hier alles im STG einstellbar)! Grüße Michael
Ich weiss, ich hab' auch schon Haltech, PowerFC und co. 'programmiert'. Wie die Schaltung aussieht? Hm. Die übliche KFZ Eingangsbeschaltung -> Arduino Nano -> fertig.
Der Code könnte dann etwa so aussehen:
1 | boolean bIgnitionBreak = false; |
2 | int bIgnitionBreakTime = 1000; |
3 | int iPotiValue = 0; |
4 | int iOldPotiVal = 0; |
5 | int ipotPin = 2; // an den 2V / 4V Ausgang |
6 | int iECUPin = 11; // in die ECU |
7 | |
8 | void setup() |
9 | {
|
10 | pinMode(iECUPin, OUTPUT); |
11 | iPotiValue = analogRead(ipotPin) \ 100; |
12 | iOldPotiVal = iPotiValue |
13 | }
|
14 | |
15 | |
16 | void loop() |
17 | {
|
18 | iPotiValue = analogRead(ipotPin) \ 100; |
19 | if (iPotiValue != iOldPotiVal) |
20 | {
|
21 | IGNBreak(bIgnitionBreakTime); // tbd |
22 | iOldPotiVal = iPotiValue |
23 | }
|
24 | delay(20); // mir egal jungs :) |
25 | }
|
:
Bearbeitet durch User
Hallo, wäre natürlich eine Möglichkeit diese Vorhaben zu lösen. Ich würde jedoch eine Hardware mit evtl. CMOS,... oder dergleichen bevorzugen! Grüße Michael
Michael schrieb: > Hallo, wäre natürlich eine Möglichkeit diese Vorhaben zu lösen. Ich > würde jedoch eine Hardware mit evtl. CMOS,... oder dergleichen > bevorzugen! In der Tat wäre eine rein analoge Schaltung die bessere Lösung. Mit obigem Code hast Du das Ding schnell realisiert. Die analoge Schaltung musst Du erstmal zeichnen. Die Leute hier sind zwar sehr hilfsbereit, eine pfannenfertige Lösung (auf Basis eines Schaltplans, rein analog, wie Harald vorschlägt) wird Dir hier aber IMHO keiner liefern (wollen).
:
Bearbeitet durch User
> Die Leute hier sind zwar sehr hilfsbereit, eine pfannenfertige Lösung > (auf Basis eines Schaltplans, rein analog, wie Harald vorschlägt) wird > Dir hier aber IMHO keiner liefern (wollen). Das erwarte ich mir auch nicht... :-) Ich werde mich mal mit dem Code auseinandersetzen und heute Abend mal ausprobieren. Melde mich die Woche mal - vorab Dankeschön
> sobald sich die Potentiometerstellung minimal ändert Denke nochmal über "minimal" nach. Das willst du nämlich ganz sicher nicht. Die Schaltung würde sonst ständig auslösen, denn minimale Änderungen winden ständig statt, alleine schon aufgrund vom Rauschen der Elektronen. Falls du meine Bedenken albern findest, dann denke mal über Vibrationen nach. > Ich würde jedoch eine Hardware mit evtl. CMOS,... oder dergleichen > bevorzugen! Du hast keine Ahnung von der Technik und bevorzugst sie dennoch? Keine gute Idee. Mache es lieber mit einem Mikrocontroller programmierbar, damit kommst du schneller auf ein brauchbares Ergebnis - selbst wenn du das Programmieren erst noch lernen musst. Vielleicht gefällt Dir diese Einsteiger-Anleitung, da ist (was das Programmieren angeht) schon alles drin, was du brauchst: http://stefanfrings.de/mikrocontroller_buch2/index.html Fehlt nur noch eine Eingangs-Schutz-Schaltung. Damit helfen wir Dir gerne. Dazu brauchen wir aber ein paar Infos zum Poti und wie es angeschlossen ist. Ich nehme an, du möchtest ein bereits vorhandenes Poti mit verwenden. Also gilt es, herauszufinden, wie das Ausgangssignal des Potis aussieht (vermutlich eine Gleichspannung im Bereich von x bis y).
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.