Maskinistens Twitter-flöde  Stöd Maskinisten via Patreon  Maskinistens nätverk - information på svenska  Maskinistens nätverk - information på finska  Maskinistens nätverk - information på norska  Maskinistens nätverk - information på danska  Maskinistens nätverk - information på isländska
Forumindex

ForumindexForumindexMaskin-databasFotoalbumKalender-informationKöp & SäljDownloadsLexikonKontaktregisterCrimedatbase

Åkerman-register
Visa forum för mobila enheter

ForumindexVerkstadsforumAllmänt[Allmänt] El/elektronik

Bygga egen styrning (ECU) till en pumpdyse-dieselmotor

1612 inlägg • Sida 74 av 108
Diskutera el/elektronik i allmänhet här

Janson1 (trådstartaren)

#1096 » 18:41:47, 09-01-2018
  • Överför markerat ord till lexikonet

Det är väl lika bra att klistra in hela sista skarpa programmet. Jag har fullt reglerad till och från tid av spridarna.
Nästan längst ner i sketchen är dels PulseIn() och if( puls>priv+ fasttid) mm det är bara för att hitta hemläget, där man sen börjar räkna tänder och göra olika beräkningar per tand (case)

Kod: Markera allt
    #include <PureAtmega328.h>
   
            // här är 16 olika justerbara parametrar som påverkar enligt följande:
    const byte lageffekt = 5;         // effektläge tomgång utan gaspot (5) (nödkörning)
    const byte marcheffekt = 230;     // effektläge marcheffekt utan gaspot (230)(nödkörning)
    const byte fulleffekt = 252;      // effektläge fulleffekt utan gaspot (252) (nödkörning)
    const byte totaltid = 19;         // totaltid för case 18: x * motorns duration (13)
    const int tryckminskn = 60;       // turbotrycket ställs in här, högre tal = mindre tryck (60)
    const int lagstavarv = 520;       // tomgångsvarvet 580 uS motsvarar ca 800 Rpm (580)
    const byte hogstavarv = 120;      // fullgasvarvet 100 uS motsvarar ca 4200 RPM  (100)(160 = ca 2500 RPM)
    const byte aggrfaktorlag = 30;     // hur mycket spridar PWM skall öka vid belastning mellanvarv (8)
    const byte aggrfaktorhog = 150;    // hur mycket spridar PWM skall öka vid belastning högvarv (20)
    const int minfart = 3300;         // lägsta startvarv för spridarfunktion (3300 uS = 152 RPM)(3300)
    const byte startmangd = 6;       // avgör max startmängd 5 = 0,75 vevaxelpulser = 4,5 grader ontid (5)
    const float maxdeltalag = 9.0;    // max insprutningstid mellanvarv mdutation * 6.0 ger 3 vevaxelpulser = 18 gr ontid (6.0)
    const byte lagmangd = 3;          // max lågvarvsmängd 2 =  1 vevaxelpuls = 6 grader ontid (under tomgångsvarv)(2)
    const int tid1 = 4000;              // tid 1 är för att hitta pulsluckan vid start/lågvarv < 1100 RPM (2500)                           
    const int tid2 = 1200;              // tid 2 är för att hitta pulsluckan i låg varv varv 1100--> (1200)
    const int tid3 = 300;               // tid3 är normalläget vid dom flesta varvtal utom start och lägsta varv (300)
    const int sprtroghet = 450;       // korrektionstid i uS för den inbyggda påslagströgheten i spridarna
    const byte turbostartregl = 150;  // när tubotrycket börjar avläsas och bli aktivt (150 = uS mduration ca 3200RPM)(150)
    const float senasteinspr = 12.0;   // senaste insprutningstid (vid tomgång)(8.0 = 4 vevaxelpulser = 24 grader delaytid = 6 grader FÖDP) (8) lägst 4!)
    const byte tidigasteinspr =27;   // kortaste insprutningsfördröjning (vid maxvarv)(60)
                                      // 60 motsvarar tand 19 = 24 grader FÖDP
                                      // 30 motsvarar tand 20 = 18 grader FÖDP
                                     
   
   
    int vevpin = 2;                   // pulsingång vevaxelgivare, (aktivt låg).
    int kampin = 3;                   // kamaxelgivarens ingång, (aktivt låg).
    int pulsutpin = 7;  //     9            // pulsutgång 2 pulser per varv (kontrollutgång för övervakningen).
    int sprpins [] ={11,10,9,8};      // till spridarna (blir aktivt höga)
    int disable = 12;                 // aktivt hög stoppar utsignalerna till spridarna
    int sprControl = 13;              // (kontrollutgång för spridare till övervakningen).
    unsigned long delvalue;            // delvärde av pulstid i uS.
    unsigned int ondelay;             // tillslagsfördröjning spridare i uS (mS)
    long puls, priv, delta;           // senaste, föregående,total och finkorrigeringstid i uS(mS)
    float error;                      // error = varvfelet i decimalform
    float starttandf, finKorr;        // starttand i decimalform för att få startfördröjningstid.
    float  mduration, bduration;      // varvfelet = motorduration/börduration i decimalform
    byte tand = 0;                    // vevpin räknare 0 till 28, i alla fall till 26
    byte gas;                         // gas 0-255
    byte pekare = 0 ;                 // pekare för att välja rätt spridarutgång, startar på 0
    byte kamtand = 0;                 // Kamtand för att sluta detektera kamaxelgivaren efter 51 tänder, startar på 0
    int fasttid = 300;                      // Fasttid = tid1, tid2 döller tid3 beroende på varvtal, Förval Tid3.

    void setup()                     
 {
 
   pinAsInput(vevpin);               // satt vevpin som ingång (2)                         
   pinAsInputPullUp(kampin);         // satt kampin som ingång (3)
   pinAsOutput(sprpins[pekare]);     // spridarutgångar satta som arrey (11,10,9,8)
   pinAsOutput(sprControl);          // en spridarutgång som blir hög varje gång en spridare öppnas (13)
   pinAsInputPullUp (disable);       // ECU väljare Hög = on, Låg = off (12)
   pinAsOutput(pulsutpin);           // satt pulsutpin som utgång (2 pulser per varv)(7)
   Serial.begin(250000);
 }
    //______________________________________________________________________
    void loop()
 {
       
                                    //Det får plats ca 1700 klockcykler mellan varje x tal(case) (1 till 17)
                                    //Det tar lite mer än 100 mikrosek att läsa av en analogingång,
                                    //så ingen analogRead här, skall vara i case 19!
                                   
                                 
     if (digitalRead(disable)==LOW) //Disable låg stänger av ECU:n och gör den passiv
      { 
      puls = 0;                     //Genom att pulstiderna förblir 0.
      pinAsInput(sprpins[pekare]);  //Gör om spridarutgångarna till ingångar för att ej belasta
      pinAsInput(sprControl);       //Gör om spridarcontrollen till ingång för att ej belasta
      }
     
     else
      {
      pinAsOutput(sprpins[pekare]); //Vid aktiv igen så gäller spridarutgångarna som utgångar igen.
      pinAsOutput(sprControl);      //Vid aktiv så gäller spridarcontrollen som utgång igen
      }                             //*Detta är normalläget, samma som i setup*
       
             
     tand  ++ ;                       // räkna upp ett steg för varje ny puls, kommer via pulseIn()funkt.
       
      if (kamtand <= 250             // när tand 251 är räknad slutar den detektera kampin.
       {
        if (digitalRead(kampin)== LOW)// varje gång kamaxelns hempuls detekteras så resetas 4 räknaren
         {
          pekare = 0;                 // resetas till 0. Denna funktion läses utanför switch.
          kamtand ++;                 // räknar upp kamtandräknaren vid varje kampin låg.
         }
       }
       
     switch (tand)                    // här startar switch och case, tandräknaren stegar fram ett steg (case)
  {
     case 1:                          // Vid första vevpinpuls Gör:
          delvalue = priv;            // Första pulstid läggs in som deltid 1
     break;
     
     case 2:                          // Vid andra vevpinpuls Gör:
          delvalue = priv + delvalue; // föregående pulstid + föregående deltid läggs ihop
     break;
       
     case 3:                          // Vid tredje vevinpuls Gör: osv
          delvalue = priv + delvalue; // föregående pulstid + föregående deltid läggs ihop
     break;
       
                                     
     case 4:     
          delvalue = priv + delvalue; // föregående pulstid + föregående deltid läggs ihop
     break;                         
       
     case 5:
          delvalue = priv + delvalue; // föregående pulstid + föregående deltid läggs ihop
     break;
     
     
     case 6:
           delvalue = priv + delvalue; // föregående pulstid + föregående deltid läggs ihop
     break;         
       
     case 7:       
           delvalue = priv + delvalue; // föregående pulstid + föregående deltid läggs ihop
     break;
       
     case 8:           // motorns börvärde från gaspoten blir lägsta och högsta varvtal
           bduration =map(gas,0, 255, lagstavarv, hogstavarv); // ställs in högst upp
           delvalue = priv + delvalue; // föregående pulstid + föregående deltid läggs ihop
     break;
       
     case 9:
           mduration = delvalue/12;   // motorns totala pulstid i mikrosek dividerat med 12
           if(mduration >= minfart)   // motorn måste upp i x varv för att få bränsle, ställs högst upp
           {
            mduration = 0;
           }
     break;  //ger motorns verkliga fart baserat på dom 9 första tänderna. 660 - 115 uS vid normalvarv ca 800 till 4200 rpm.
     
     case 10:
          error = (mduration / bduration)-1; // räknar ut skillnaden mellan är och börvärde - 1 = error
       if (error <=0.)                       // om error under noll
        {
         error = 0.;                         // för att ej få minusvärden
        }
     break; // felet i uS mellan är och börvärde för motorns fart baserat på pulslängderna över 9 tänder
     
     
     case 11:
          // ledigt
     break;
     
     case 12:
          // ledigt
     break;                         
   
     case 13:                    //27 = tand 19 = 24 grader FÖDP
       starttandf = mduration /tidigasteinspr;// insprutningsfördröjning i gånger, ställs högst upp
       // starttandf, ett flyt-tal = motorns duration/ x som är minsta duration/max RPM. ställs högst upp
       if (starttandf >= senasteinspr)         // om över målvärdet (som ställs in högst upp)
        {                  //12.0 = tand 22 = 6 grader FÖDP
         starttandf = senasteinspr;            // blir det målvärdet ändå
        }
     break;
 
     case 14:                 // ca 1.5 till 8.0 
        ondelay = (mduration * starttandf);// tillslagsfördröjning = motorns duration * starttandsfördröjning (decimaltal)       
     break;                              //       Ondelay     uS = mduration uS     * starttandf i decimalform - trögheten i spridare
                                                               
                                                               
     case 15:                           
     // ledigt
     break;                           
     
     case 16:
     if (mduration >=161)                          // "mellanvarv"
      {                                            // Felkorrigeringsvärde som ger spridaröppningstid i uS
       delta = mduration * error * aggrfaktorlag;  // aggrfaktor låg avgör hur mycket extra ontid spridarna får vid belastning lägre varv
        if (delta >= maxdeltalag * mduration)      // om delta är mer än max tillåten delta x mduration
         {
          delta = maxdeltalag * mduration;         // förblir delta max tillåten
         }                     
      }
     if (mduration <= 160)                        // "högvarv"
      {
       delta = mduration * error * aggrfaktorhog; // Felkorrigeringsvärde som ger spridaröppningstid i uS
      }                                           // aggrfaktor hög avgör hur mycket extra on tid spridarna får vid belastning högre varv
     break;

     case 17:
     if (mduration <= turbostartregl)        // här bestämms varvtalet när turbon skall börja regleras ner
      {                                      // via kortare spridartider, ställs högst upp
       delta = delta ;                        // används ej än så delta förblir delta oförändrat           
       if (delta <=0)
        {
         delta = 0;                          // för att undvika minusvärden
        }
      }
     
     if (mduration >= 700)                   // för att få mjukstart vid motorstart.
      {
       delta = lagmangd * mduration;         // mjukstarten justeras via lågmängd högst upp             
      }
     
     if (delta + ondelay >= totaltid * mduration)
      {
       delta = (totaltid * mduration)-ondelay;// Absolut max insprutningstid, ställs högst upp
      }                                       // denna justering gäller bara på högvarv, hög belastning
     break;
     
     case 18:                                 // När puls 18 är räknad, gå in i "spridar-on-off-mode"
     if (ondelay >=10000)                     // Om ondelay är mer än 10000 uS. ( < 300RPM )
       {                                      // går tiden över från uS till mS.
        ondelay = ondelay/1000;               // Ondelay uS blir mS.
        delta = delta/1000;                    // Delta uS blir mS.
       if ((delta * 2)>= startmangd)               // här ställs startmängden in (högst upp)
        {
         delta = startmangd;                  // så det blir rätt startmängd/slag (5 = 0,75 tänder = 4,5 vevgrader)
        }
        delay(ondelay);                       // Fördröjer starttiden x antal mS beroende på varvtalet (mdurationen)
        digitalWrite (sprpins[pekare],HIGH);  // Spridarpinne hög,insprutning börjar. sprpins [pekare 8,9,10 eller 11].
        digitalWrite(sprControl, HIGH);       // Kontrollpinne som går hög vid varje insprutningstillfälle.
        delay(delta);                         // Här läggs insprutningstiden in som sen fördröjer processorn i delta mS
        digitalWrite (sprpins[pekare],LOW);   // Spridarpinne låg,insprutning avslutad sprpins [pekare 8,9,10 eller 11].
        digitalWrite (sprControl, LOW);       // Kontrollpinne som går låg efter varje insprutningstillfälle.
       }                                     // Detta paket används vid låga farter såsom start/lågvarv < 250 RPM
     
     else                                     // Eller om delay är mindre än 10000 uS. (> 250 RPM)
       {
       ondelay = ondelay - sprtroghet;
        if (delta > 30)                       // Delta under 30 uS har inget värde
        {
        delta = delta +sprtroghet;              // Delta över 30 blir x delta + trögheten i spridaren (ca 450 uS)
        }
        delayMicroseconds(ondelay);           //Fördröjer starttiden i ondelay uS beroende på varvtalet (mdurationen)
        digitalWrite (sprpins[pekare],HIGH);  //Spridarpinne hög,insprutning börjar. sprpins [pekare 11,10,9 eller 8].
        digitalWrite(sprControl, HIGH);       //Kontrollpinne som går hög vid varje insprutningstillfälle.
        delayMicroseconds(delta);             //Här läggs insprutningstiden in som sen fördröjer processorn ion spridare delta uS
        digitalWrite (sprpins[pekare],LOW);   //insprutning avslutad sprpins [pekare 8,9,10 eller 11] går låg.
        digitalWrite (sprControl, LOW);       //Kontrollpinne som går låg efter varje insprutningstillfälle.
       }                                      //Detta paket används vid varv (250 -> RPM = nästan alltid, förutom vid motorstart)
     break;                         //Dessa paket tar 1 till 6 tänder att genomföra beroende på varvtal och belastning
       
     case 19:                                 // är mellan  tand 19 och 24
           gas = analogRead(A0)>>2;           // analogingång för gasreglage 0 till 255( skiftad 2 gånger)
     break;   // analalogRead tar ca 120 uS att läsa = 1-2 tänder vid fullvarv
                           
                                     
 
     
  }
     //______________________________________________________________________________________________________   
        priv = puls;                          // lägger in den förra pulstiden i värdet "priv" (uS)

     
       if (mduration >1800)                    // när motorn går på allra lägsta varv
       {
        fasttid = tid1;
       }
       if ((mduration >400)||(mduration <1800)) // Om motorn går under 1100 RPM
        {
         fasttid = tid2;                        // används tid2 (1200 uS i grundinställning)
        }
       if (mduration <400)                      // Om motorn går över 1100 RPM
        {
          fasttid = tid3;                       // används tid3 (300 uS i grundinställning)
        }
       
        puls = pulseIn(vevpin, LOW);  // Ett färdigt kommando som väntar in nästa puls (tand).
                                              // vid stillastående motor blir det en timeout
                                              // efter 1 Sek
                       
      if  (puls > priv + fasttid)                // jämför om ny pulstid i uS är större än föregående + tid1 eller tid2.
       {
        digitalWrite (pulsutpin, HIGH);       // utpin blir hög när pulsluckan återgår till pulser
         
         tand = 0;         // resetar 0 till 28 räknaren som bara har hunnit räkna mellan 19 och 27 tänder
         
         pekare = pekare + 1;                 // räknar upp spridarpinpekräknare
         
         if (pekare > 3)                      // när fjärde pinnen är nådd börjar den om igen
          {
          pekare = 0;                         // spridarpinne 1 är igång igen (1 = D11)
          }
       }
                     
       if  (puls < priv - fasttid)            // jämför on ny pulstid är mindre än förgående - tid1 eller tid2.     
         {   
         digitalWrite (pulsutpin, LOW);       // utpin blir låg igen nästa uppgång i pulståget.
         }
 }       
       
                                              // end void loop()
Senast redigerad av Janson1 19:37:07, 13-01-2018, redigerad totalt 1 gång.

1 person gillar det här inlägget.
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...



Janson1 (trådstartaren)

#1097 » 18:44:31, 09-01-2018
  • Överför markerat ord till lexikonet

Skall väl tillägga, jag har inte hunnit göra alla kommentarer riktigt rätt än i sketchen.
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

Janson1 (trådstartaren)

#1098 » 13:11:26, 10-01-2018
  • Överför markerat ord till lexikonet

Nu startade den!! Den är ganska trög att få igång och jag hade (har) programmerat alldeles för låg tomgång, det skall ändras.
Vidare så är den bara trecylindrig, den blev fyrcylindrig ett kort ögonblick sen dog den... Jag såg på skopet att den inte tappade hemläget eller nån utsignal som försvann. Efter detta så är den lika omöjlig igen... Jag tror (läs tror) att den läcker upp förbränningsgaser i från den fjärde spridaren som jag hade loss, så fort den får liv blåser det upp luft i tillförseln och stör ut alla spridare ungefär samtidigt. Men under tiden den gick vid första tillfället så hördes turbon så där lite hemtrevligt... Jag har nu fyllt kylsystemet så den inte bränner upp i förtid för en sådan simpel sak. Hade väl tänkt köra den en stund för att se om fjärde spridaren hämtade sig, nu dog den istället. Förutom lite justeringar i programmet så skall jag skaffa en ny kopparbricka, byta den, lufta ur den rejält utan glödstiften i, då ser man dimman när dom börjar fungera. Och sen påt igen.
Ja det är väl ingen superfart på det då jag har åkt på bihåleinflammation, men sen...

8 personer gillar det här inlägget.
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

Ulf

#1099 » 13:16:40, 10-01-2018
  • Överför markerat ord till lexikonet

:buga: :buga:

Stort och imponerande!

Att du dessutom har ont i hålorna gör inte bedriften mindre!

Krya på dig!
Kommer du med problem, eller är du en del av det?

1 person gillar det här inlägget.
Användarvisningsbild
Ulf
Fler än 500 inlägg
 
Blev medlem: 16:04:18, 05-03-2004
Ort: Kil
Maskintyp: Traktor
Maskin: Nuffield 460 -61

Janson1 (trådstartaren)

#1100 » 13:22:03, 10-01-2018
  • Överför markerat ord till lexikonet

Tackar Ulf! Det känns lite extra bra trots allt, nu vet jag att jag är ganska rätt ute.
Bild
En liten förklaring på ett papper från huvudet hur jag önskar grundprogrammeringen.
Ja läs, fråga på det som är oklart!

1 person gillar det här inlägget.
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

igelkottar

#1101 » 13:57:24, 10-01-2018
  • Överför markerat ord till lexikonet

Görbra jobbat Janson1 :thummar: :thummar:

Edit:
Tillägg, även ni andra så klart. :thumme:
Bild
/Lillen

"Jag bryr mig faktiskt inte om vad folk tycker.
Jag gör vad jag har lust med."

Julia Child (1912–2004), ameri-
kansk kock och kokboksförfattare
Användarvisningsbild
igelkottar
Fler än 500 inlägg
 
Blev medlem: 13:53:53, 31-01-2008
Ort: Skövde
Sverige
Maskintyp: Ej angivet
Maskin: Gutbrod 1050 Trädgårdstraktor m. Skopa, snöschaktblad och borstaggregat.

Janson1 (trådstartaren)

#1102 » 16:51:38, 10-01-2018
  • Överför markerat ord till lexikonet

Tackar! Jag har en fråga som jag tror Turbodiesel har lite svar på. Tändläget kontra varvtal/värme/turbotryck...
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

Turbodiesel

#1103 » 18:31:17, 10-01-2018
  • Överför markerat ord till lexikonet

Elektroniska system justerar troligen tändläget väldigt ofta och gärna. Äldre mekaniska (t,ex bosch VE) tidigarelägger tändningen beroende på varvtalet, oavsett turbo eller inte. De har i stort sett fast insprutningsbörjan, men insprutningens slut varierar med leveransmängden/motorns belastning.

Några hårda fakta eller specialkunskaper inom området har jag inte tyvärr.
TD´s gamla maskinteckningar.
::::
Framtiden var bättre förr..

1 person gillar det här inlägget.
Användarvisningsbild
Turbodiesel
Fler än 500 inlägg
 
Blev medlem: 17:11:13, 21-05-2008
Ort: U-ganda
Sverige
Maskin: John-Deere

Janson1 (trådstartaren)

#1104 » 19:53:24, 10-01-2018
  • Överför markerat ord till lexikonet

Tack Turbodiesel. Jag har väl en liknande idé, se inlägg 1100. Jag börjar där och ser vad som sen behöver justeras om...
Jag märkte nu att den rök ganska svart redan lite över tomgång, är tiden för sen eller för tidig då?
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

Turbodiesel

#1105 » 21:50:33, 10-01-2018
  • Överför markerat ord till lexikonet

Bör vara tidig om du har de två alternativen att välja på, att den motarbetar sig själv och inte orkar varva vad bränslet motsvarar. Sen insprutning brukar ge vitrök eller hemsk värmeutveckling.

Eller så får den inte luft, av okänd orsak. Spjället i insuget ska väl vara öppet utan vakuum, men det kan väl vara en orsak i så fall.
TD´s gamla maskinteckningar.
::::
Framtiden var bättre förr..
Användarvisningsbild
Turbodiesel
Fler än 500 inlägg
 
Blev medlem: 17:11:13, 21-05-2008
Ort: U-ganda
Sverige
Maskin: John-Deere

Janson1 (trådstartaren)

#1106 » 23:34:17, 10-01-2018
  • Överför markerat ord till lexikonet

Insugsspjället är väck sedan länge men det kan ju faktiskt ligga kvar ett skyddspapper framför någon ventil då jag tyckte den rök lite olika per slag. Nu har jag gjort om sketchen så den stämmer med min ritning, det är nog en bra början nu när jag fått lite mer input om motorns beteende. Så först skall kopparbrickan&O-ringarna bytas (beställda) sedan så en rejäl urluftning och få garanterat liv i alla spridarna. Sen få motorn att gå bra på alla varv i tomme, bara det blir en utmaning... Om jag nu lyckas med det så blir det att tillverka en växellåda så den kan driva en propeller.

2 personer gillar det här inlägget.
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

Janson1 (trådstartaren)

#1107 » 21:32:37, 12-01-2018
  • Överför markerat ord till lexikonet

En ytterligare fundering till... Turbomotorer av lite äldre årgångar har ju en rökbegränsare, jag antar den känner om turbon laddar eller ej och stryper om turbon inte laddar och krämar på när turbotrycket byggs upp. Min första tanke var att ha full insprutning tills turbotryckets målvärde är uppnått och sen styra ner mängden tills det råder balans. Om man nu tänker lite längre så kanske man bör jämföra atmosfärstrycket med insugstrycket och därifrån först styra ner mängden om turbotrycket är lägre än atmosfärstrycket och så följa bränslemängdsökningen med ökat turbotryck tills målvärdet är nått. När målvärdet överskrids minskas bränslemängden igen. Jag tycker det känns som en bra reglermetod, vad säger ni andra?
Jag tror mig kunna göra detta först teoretiskt och för att kunna testa det praktiskt behöver det finnas en vettig belastning att tillgå, typ en propeller... Tusen, det närmar sig nog för att börja tillverka växellådan.
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

Turbodiesel

#1108 » 22:04:42, 12-01-2018
  • Överför markerat ord till lexikonet

Turbotrycket ska styras ned (bibehållas) när trycket är uppnått med hjälp av wastegaten, inte genom att sänka bränslemängden. Däremot sväljer den inte full bränslemängd om du inte har turbotryck, vilket den gamla rökbegränsaren hade som uppgift att hålla reda på. Styr du turbotrycket genom att minska bränslemängden gissar jag att motorn blir riktigt klen. Överladdning används ju för att kunna bränna mer bränsle, inte för att klara sig med mindre.

Har du en normal WG-turbo från den här tiden är den troligen öppen (eller väldigt lågt ställd (grundladdtryck), och stänger när det behövs turbotryck för att sedan öppna gradvis när trycket nås, eller när det inte behövs något speciellt tryck (typ landsvägskörning på plan mark). Vid låg last brukar turbon inte användas. Du bör ha en särskild elventil för ändamålet.

Har du variabel turbo (VGT eller vad den kan heta till VW, med tryckklockan åt sidan) är regleringen svår att få till vad jag vet, många har försökt, med dålig hållbarhet på aggregaten som följd. Troligen för att de övervarvar med lätthet.


Gamla fasta (diesel) turboaggregat var ju anpassade till motorn, de gav dåligt tryck på låga varv, och maxtrycket ökade något när man skruvade upp pumpen.

Är ganska trött dock, så det kan vara lite svammelvarning.
TD´s gamla maskinteckningar.
::::
Framtiden var bättre förr..
Användarvisningsbild
Turbodiesel
Fler än 500 inlägg
 
Blev medlem: 17:11:13, 21-05-2008
Ort: U-ganda
Sverige
Maskin: John-Deere

Janson1 (trådstartaren)

#1109 » 23:41:10, 12-01-2018
  • Överför markerat ord till lexikonet

Jag har en turbo med variabel turbo geometri, den borde man väl kunna likställa med en fast fullt öppen turbo utan wastegate då jag har låst den i max öppet läge och i detta läget borde det inte vara nån risk för övervarvning om det inte blir för mycket avgaser = för högt tryck. Jag känner instinktivt att det inte finns nåt bättre sätt att hålla styr på trycket?
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...

Janson1 (trådstartaren)

#1110 » 19:53:05, 13-01-2018
  • Överför markerat ord till lexikonet

Gjorde en editering på inlägg # 1096 för att jag funnit ut bättre injusteringar av ECU:n. Jag har gjort ett nytt kretskort som skall skickas in för tillverkning ganska snart, får väl suga på det ett litet tag ifall nåt nytt revolutionerande upptäcks... Jag tog loss insugningsröret och kontrollerade för ev papper eller annat, det var "rent" från papper åtminstone men mycket skit från avgasåterföringen.
Bild
Det har även blivit ett antal potar som skall simulera div teperaturer och tryck med möjlighet att kunna köra utanför "fönstret" (OBS: Detta har inget med Windows att göra). Om en givare går sönder så vill jag ha förproggramerade grundvärden. Tex om vattentempgivaren ger upp så skall 75 grader vattentemp användas som beräkningsunderlag.
Just nu håller jag på med att få till alla värden så dom hamnar lite så där precis utanför min och maxvärde för att få så realistiskt som möjligt.

3 personer gillar det här inlägget.
Janson1
Fler än 500 inlägg
 
Blev medlem: 12:50:52, 21-03-2010
Ort: Mark Västra Götaland
Sverige
Maskintyp: Grävmaskin (larvburen)
Maskin: Bobcat X125 (2.5 ton)
Case CK-15 (Kubota kx41)
+ div. flygplan, helikoptrar
Senaste renoveringsobjekten:
Piper PA-24 Comanche från -64 (flyger nu)
Ferguson Grålle/VW diesel 1952/2002 (rullar nu)
10 Kw solcellsanläggning som surrar och går.
Försöka få till ett Ö-drift elsystem utifall att...


Återgå till [Allmänt] El/elektronik

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 7 gäster



Älmeboda Maskinservice

OilQuick

TK Traktordelar

Klaravik

Crazyride

Bra Verktyg

Motrab

Engcon

Scandcut

Astrak

Olsson Parts

Nya och begagnade
truckar på vstruck.se