Donnerstag, 4. Juni 2015

Schafi simuliert ... den Verbrennungsmotor

Wie versprochen, habe ich einen Verbrennungsmotor gebastelt, der allerdings keine Abmaße hat und so gesehen nur durch seinen Wirkungsgrad definiert wird. Wenn ich mehr hineinstecke, könnte er größer sein, aber die Größe ist hier egal, es geht nur darum, was drinnen ist, und wenn es 20 Liter Luft und dazu 10 ml Benzin sind, dann könnte es ein dementsprechend riesiger Motor sein, aber ich bleibe da lieber etwas realistischer und nutze kleinere Mengen. Was charakterisiert so einen Motor? Vorne kommt Kraftstoff rein und hinten kommt Leistung raus, wie beim E-Motor, nur mit dem Unterschied, dass das Drehmoment nicht so konstant ist.



Sieht doch einfach aus, ist es so gesehen auch. Links kommt Kraftstoff hinein, aber mir gefällt das ganze noch nicht so, da Kraftstoff pro Umdrehung hineinkommt und keine bestimmte Menge pro Zeit, was zur Folge hat, dass der sich selbst hochdreht. In einigen Formeln wird mittels der Drehzahl und der Kraftstoffmenge das Drehmoment berechnet, das an der Kurbelwelle anliegt, noch ein wenig Reibung hinzu, die einiges an Optimierungszeit benötigte und einen Drehzahlmesser.
Außerhalb des Motors wird dann Drehmoment gemessen und mit der Drehzahl zur Leistung zusammengerechnet und für mich sichtbar gemacht. Auf der anderen Seite gebe ich die Menge des Kraftstoffs an, die im Sekundentakt 6 Sekunden erhöht wird und nach 10 Sekunden, dann wieder auf 0 gesetzt wird, für Testzwecke versteht sich. Diese Sprünge sieht man sehr gut im Drehmomentenverlauf und auch, dass er ab 6000 U/min stark an Leistung verliert. Und wer sich jetzt fragt, warum, da solche Zacken sind, das ist die Drehzahlbegrenzung, die bei 8000 U/min die Einspritzung stoppt, könnte sie natürlich auch schon früher einsetzen lassen, oder ganz weglassen, da der Motor ab 8400 eh nicht mehr genügend Kraft hat, noch höher zu gehen.
Warum macht er diese ganzen Sachen? Weil in meinem Fall der Wirkungsgrad die charakteristische Momentenkurve wiedergibt. Mitttels einer Exceltabelle habe ich mir meine Wunschwerte ausgewählt und sie zu einem Polynom formen lassen. Der mit der 4. Ordnung, gefiel mir sehr gut, allerdings ergab er andere Werte, als aus denen er bestand, worauf der Motor dreimal so schnell lief, wie er sollte, also nahm ich erstmal den 2. Ordnung und so sieht das dann aus:
if n > 133
    eta = 0;
else
    eta = -0.00007*n*n + 0.01*n;
end
Eta ist der Wirkungsgrad und wird auf 0 gesetzt, wenn 7980 U/min, beziehungsweise 133 U/s überschritten werden. Vor und nach der Berechnung ist noch jeweils eine Verzögerungskonstante von 0,1 Sekunden eingebaut, da das Ganze in real auch etwas zeitverzögert funktioniert und ohne in der Simulation zu einem infiniten Problem würde. Mal schauen, was daraus wird.


Euer Wetterschaf

3 Kommentare