Bij deze maar even een nieuw topic om het wat overzichtelijk te houden. Ik ben dus bezig om een soort van zo goedkoop mogelijke launch control te maken. De aftermarket setjes die ik nog wel eens zie zijn meestal niks meer dan een toerenbegrenzer. Afgelopen zondag dacht ik, dat kan ik zelf ook maken. En zo is het projectje begonnen.
Het doel: Bij X RPM de bobine uitschakelen voor X aantal milliseconden.
De componenten die op dit moment in gebruik zijn voor versie 1 zonder het uitlezen van het toerental:
- Arduino UNO Rev3
- relais dat tot 220 volt kan hebben (dus ook een 12v bobine)
- breadboard
- LED lampje
- drukknopje
- en nog wat kabeltjes
Zo ziet het er nu ongeveer uit. Is nog wel het een en ander aan gewijzigd sinds de foto maar het is nog wel ongeveer hetzelfde:
De stroomkabel van de bobine wordt omgeleid naar het relais. Op het breadboard zit het knopje (erg klein) en een LED (zit wat verscholen achter 2 kabeltjes).
De Arduino staat de volgende code in.
wanneer er // staat dan is alles daar achter op die regel commentaar. Heb er hier en daar even wat tussen gezet voor degenen die er interesse in hebben.
Code:
int buttonInput = 8; // poort 8 op de Arduino
int ledOutput = 13; // poort 13
int relayOutput = 2; // poort 2
int buttonState = 0; // de naam buttonState reserveren voor later gebruik
int igniteDelay = 60; // aantal milliseconden dat de bobine AAN staat
int shutDelay = 240; // aantal milliseconden dat de bobine UIT staat
void setup() {
pinMode(ledOutput, OUTPUT);
pinMode(relayOutput, OUTPUT);
pinMode(buttonInput, INPUT);
digitalWrite(buttonInput, HIGH);
}
// deze 'loop' wordt herhaald zolang als de Arduino aan staat
void loop() {
buttonState = digitalRead(buttonInput);
if(buttonState == LOW){ // is de knop ingedrukt?
// ja
//LED aanzetten
digitalWrite(ledOutput, HIGH);
//signaal naar het relais sturen, bobine wordt uitgeschakeld
digitalWrite(relayOutput, LOW);
//even wachten
delay(shutDelay);
//signaal naar het relais verbreken, schakelt de bobine vervolgens weer aan
digitalWrite(relayOutput, HIGH);
//even wachten
delay(igniteDelay);
}else{
// nee
digitalWrite(ledOutput, LOW);
}
}
kort samen gevat wordt de bobine aan/uit geschakeld na een bepaald aantal milliseconden. De ingestelde milliseconden zijn toevallig voor mijn 1.1 even redelijk goed. Voor knallen uit de uitlaat is het nog wel even goed uitzoeken hoeveel tijd er exact tussen moet zitten maar dit is het resultaat tot nu toe. Werkt behoorlijk goed. Het is alleen nog even spelen met het gas om precies goed te zitten (teveel gas knalt niet). Moet dus de tijden ook weer aanpassen als ik meer gas moet geven. Hoop gedoe als het op tijd gaat, dus moet het maar snel werkend hebben om het toerental uit te lezen.
Het resultaat tot nu toe: (klik voor filmpje)
en ja, na het maken van het filmpje was ik behoorlijk doof