Ihr eigenes Kit Aufbauend auf Ethanol zu laufen E85
-
- Moderator
- Beiträge: 79121
- Anmeldung: 10/02/03, 14:06
- Ort: Planet Serre
- x 10973
ken startet bereits mit unserem stp image hosting
Dann scheint mir die Hungersnot in Afrika mit Bioethanol nicht aufgetaucht zu sein ... wenn?
Dann scheint mir die Hungersnot in Afrika mit Bioethanol nicht aufgetaucht zu sein ... wenn?
0 x
Mach a Bildersuche oder Textsuche - Netiquette von forum
- Der ehemalige Oceano
- Moderator
- Beiträge: 1571
- Anmeldung: 04/06/05, 23:10
- Ort: Lothringen - Frankreich
- x 1
Hallo
Kleine Überprüfung nach ein paar Monaten des Gebrauchs:
Leistung und Motorgenehmigung identisch mit dem 95, ein wahrer Genuss, besonders wenn man den E85 mit 0.72 Euro bezahlt.
Überkonsum von ca. 15/20% (ich werde im Winter zu 30% und im Sommer zu 35% bezahlt)
Alkoholgeruch beim Starten bei kaltem Motor.
Warmstart Nickel trotz 10 Sekunden Choke.
Wenn der Motor kalt ist, startet er erst bei der 2. Umdrehung des Schlüssels, aber ich denke, dass er die 20 oder 3 Sekunden, die dem Einschalten der Box folgen, immer noch 4% mehr verpasst.
Hier ist eine mehr als positive Einschätzung, nur ein kleiner Nachteil: der erste Kaltstart, der problematisch ist und mit der eintretenden Kälte wahrscheinlich nicht klappt.
Ich werde versuchen, das NLC-Programm zu verstehen, um es hinzuzufügen, aber es ist nicht offensichtlich, wenn Sie nicht da sind .
Kleine Überprüfung nach ein paar Monaten des Gebrauchs:
Leistung und Motorgenehmigung identisch mit dem 95, ein wahrer Genuss, besonders wenn man den E85 mit 0.72 Euro bezahlt.
Überkonsum von ca. 15/20% (ich werde im Winter zu 30% und im Sommer zu 35% bezahlt)
Alkoholgeruch beim Starten bei kaltem Motor.
Warmstart Nickel trotz 10 Sekunden Choke.
Wenn der Motor kalt ist, startet er erst bei der 2. Umdrehung des Schlüssels, aber ich denke, dass er die 20 oder 3 Sekunden, die dem Einschalten der Box folgen, immer noch 4% mehr verpasst.
Hier ist eine mehr als positive Einschätzung, nur ein kleiner Nachteil: der erste Kaltstart, der problematisch ist und mit der eintretenden Kälte wahrscheinlich nicht klappt.
Ich werde versuchen, das NLC-Programm zu verstehen, um es hinzuzufügen, aber es ist nicht offensichtlich, wenn Sie nicht da sind .
0 x
Guten Tag,
Für diejenigen, die versuchen, das NLC-Programm zu verstehen, habe ich einen Klon entwickelt (ich weiß nicht, ob er noch funktioniert, ich muss einige Tests durchführen).
Es ist noch nicht ganz fertig, aber hier ist es.
Sie sollten das System besser verstehen.
Ich benutze den CCS-Compiler.
Für diejenigen, die versuchen, das NLC-Programm zu verstehen, habe ich einen Klon entwickelt (ich weiß nicht, ob er noch funktioniert, ich muss einige Tests durchführen).
Es ist noch nicht ganz fertig, aber hier ist es.
Sie sollten das System besser verstehen.
Ich benutze den CCS-Compiler.
Code: wählen
#include "16F628A.h"
#use delay(clock=20000000)
#define BP PIN_A0
#define LED PIN_B0
#define injecteur1_in PIN_A1
#define injecteur2_in PIN_A2
#define injecteur3_in PIN_A3
#define injecteur4_in PIN_A4
#define injecteur1_out PIN_B1
#define injecteur2_out PIN_B2
#define injecteur3_out PIN_B3
#define injecteur4_out PIN_B4
/* Le principe est d'incrementer de 1 une variable tant que l'injecteur est à O, puis lorsqu'il est à 1, on decremente cette variable de n tout en gardant l'injecteur à 0 tant que la variable n'est pas à 0. lorsqu'elle est à 0, on passe l'injecteur à 1. On observe dont une augmentation du rapport cyclique de 1/n * 100 %.
les 10 premieres secondes, nous auronts un enrichissement de 50% afin de faciliter le demarage à froid, puis de 20% le reste du temps*/
//---------init variable---------
int mode=1; //initialisation de mode bio_ethanol par default
//-------init fonction------
void type_carburant();
void pilotage_injection();
void pilotage_injection_demarage();
void main ()
{
type_carburant();
if (mode==1)//si mode bio-ethanol, on augmente l'injection de 50% au demarage
{
pilotage_injection_demarage();
}
pilotage_injection();
}
void type_carburant()
{
//------ on utilise un interrupteur afin de voir si on est sur bio-ethanol ou essence
// le reglage est manuel
if(INPUT(BP)==1) //MODE BIO-ETHANOL
{
mode=1;
output_high(LED);
}
if(INPUT(BP)==0)//mode sp95
{
mode=0;
output_low(LED);
}
}
void pilotage_injection_demarage()
{
//------------declaration variables------------
unsigned int32 retard1=0, retard2=0, retard3=0, retard4=0,i=0 ;
int decrement=2; //1/2 = 50% d'enrichissement
//------init timer0 pour executer cette sequence que 20s-------
setup_timer_1(rtcc_div_256);
set_timer1(0);
while(i<60000){
//------------si l'injecteur est piloté (etat bas) on incremente--------
if(input(injecteur1_in)==0)
{
retard1++;
output_low(injecteur1_out);
}
if(input(injecteur2_in)==0)
{
retard2++;
output_low(injecteur2_out);
}
if(input(injecteur3_in)==0)
{
retard3++;
output_low(injecteur3_out);
}
if(input(injecteur4_in)==0)
{
retard4++;
output_low(injecteur4_out);
}
//--------------si le pilotage est arreté, mais que retard > 0
if(input(injecteur1_in)==1 && retard1>0)
{
retard1=retard1-decrement;
output_low(injecteur1_out);
}
if(input(injecteur2_in)==1 && retard2>0)
{
retard2=retard2-decrement;
output_low(injecteur2_out);
}
if(input(injecteur3_in)==1 && retard3>0)
{
retard3=retard3-decrement;
output_low(injecteur3_out);
}
if(input(injecteur4_in)==1 && retard4>0)
{
retard4=retard4-decrement;
output_low(injecteur4_out);
}
//------------si pilotage arreté et que retard <=0
if(input(injecteur1_in)==1 && retard1<=0)
{
output_high(injecteur1_out);
}
if(input(injecteur2_in)==1 && retard2<=0)
{
output_high(injecteur2_out);
}
if(input(injecteur3_in)==1 && retard3<=0)
{
output_high(injecteur3_out);
}
if(input(injecteur4_in)==1 && retard4<=0)
{
output_high(injecteur4_out);
}
}
}
//-------pilotage en regime permanent---------
void pilotage_injection()
{
//------------declaration variables----------
unsigned int32 retard1=0, retard2=0, retard3=0, retard4=0 ;
int decrement=5; //1/5 = 20%
//------------------MODE BIO-ETHANOL-----------------
if (mode==1)
{
while(1){
//------------si l'injecteur est piloté (etat bas) on incremente--------
if(input(injecteur1_in)==0)
{
retard1++;
output_low(injecteur1_out);
}
if(input(injecteur2_in)==0)
{
retard2++;
output_low(injecteur2_out);
}
if(input(injecteur3_in)==0)
{
retard3++;
output_low(injecteur3_out);
}
if(input(injecteur4_in)==0)
{
retard4++;
output_low(injecteur4_out);
}
//--------------si le pilotage est arreté, mais que retard > 0
if(input(injecteur1_in)==1 && retard1>0)
{
retard1=retard1-decrement;
output_low(injecteur1_out);
}
if(input(injecteur2_in)==1 && retard2>0)
{
retard2=retard2-decrement;
output_low(injecteur2_out);
}
if(input(injecteur3_in)==1 && retard3>0)
{
retard3=retard3-decrement;
output_low(injecteur3_out);
}
if(input(injecteur4_in)==1 && retard4>0)
{
retard4=retard4-decrement;
output_low(injecteur4_out);
}
//------------si pilotage arreté et que retard =0
if(input(injecteur1_in)==1 && retard1<=0)
{
output_high(injecteur1_out);
}
if(input(injecteur2_in)==1 && retard2<=0)
{
output_high(injecteur2_out);
}
if(input(injecteur3_in)==1 && retard3<=0)
{
output_high(injecteur3_out);
}
if(input(injecteur4_in)==1 && retard4<=0)
{
output_high(injecteur4_out);
}
}
}
//-------------------------MODE SP-95--------------------
if (mode==0)
{
while(1){
//------------si l'injecteur est activé (etat bas), on l'active-------
if(input(injecteur1_in)==0)
{
output_low(injecteur1_out);
}
if(input(injecteur2_in)==0)
{
output_low(injecteur2_out);
}
if(input(injecteur3_in)==0)
{
output_low(injecteur3_out);
}
if(input(injecteur4_in)==0)
{
output_low(injecteur4_out);
}
//------------si pilotage arreté en entrée, on arrete le pilotage en sortie
if(input(injecteur1_in)==1)
{
output_high(injecteur1_out);
}
if(input(injecteur2_in)==1)
{
output_high(injecteur2_out);
}
if(input(injecteur3_in)==1)
{
output_high(injecteur3_out);
}
if(input(injecteur4_in)==1)
{
output_high(injecteur4_out);
}
}
}
}
0 x
latorsche schrieb:bin ich jede kleine Änderung auf der Quelldatei mit dem Compiler des NLC getan,
aber ich kann nicht scheinen, die Hex-Datei zu erzeugen, um die Spitze zurückzukehren.
Die Kann mir jemand die Schritte zu folgen. (Zu Ihrer Information ist dies die hallo-Tech-C-Compiler)
Welche Zusammenstellung haben Sie genommen, die neueste Version, die auf ihrer Website zum Download zur Verfügung steht? Ich weiß nicht, ob es richtig funktionieren wird, weil die Demoversion gut kompiliert, aber den Code überhaupt nicht optimiert, und der sensible Abschnitt namens all 25us meiner Meinung nach nicht bestanden wird
Die von mir verwendete Demoversion ist älter und wird mit Optimierungen kompiliert.
0 x
NLC schrieb:Welche Zusammenstellung haben Sie genommen, die neueste Version, die auf ihrer Website zum Download zur Verfügung steht? Ich weiß nicht, ob es richtig funktionieren wird, weil die Demoversion gut kompiliert, aber den Code überhaupt nicht optimiert, und der sensible Abschnitt namens all 25us meiner Meinung nach nicht bestanden wird
Die von mir verwendete Demoversion ist älter und wird mit Optimierungen kompiliert.
Ich verwende dieselbe Compiler-Version wie Sie, da Sie Ihre Umgebung online gestellt haben
(die es übrigens nicht mehr haben )
In Bezug auf Änderungen:
_Ich bin von 200 ms auf 300 ms gegangen, wenn die LED ausgeschaltet ist, um das Zählen des Anreicherungsmodus zu erleichtern.
_ Ich habe die letzten 2 Werte in der Anreicherungstabelle für den Anfang geändert (45% => 50% und 50% => 70%).
_Ich reduzierte den Basisstarter von 10 auf 8 Sekunden auf 50% sowie die Renditen in der Anreicherungstabelle (10 => 9).
_Ich habe in den ersten 70 Sekunden einen Starter von 3% hinzugefügt, indem ich von jeder Zeile, in die sarterTmp geschrieben wurde, Kopieren und Einfügen gemacht und sie in starterboostTmp geändert habe.
Ich muss die Tests morgen noch durchführen, da ich mir nicht ganz sicher bin, wie der Starter im Programm geführt wird.
Ich habe die 3er über die 8er gesetzt
0 x
Wer ist online?
Benutzer, die das durchsuchen forum : Keine registrierten Benutzer und 140-Gäste