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 79 av 108
Diskutera el/elektronik i allmänhet här

Janson1 (trådstartaren)

#1171 » 08:48:50, 06-02-2018
  • Överför markerat ord till lexikonet

Är det inte typiskt, det finns två olika pinout på NANO där det skiljer sig på TX, RX, en av dom har fel... men vilken? Sitter nu långt ifrån all reda och ärlighet (utan fysiska kretskort i alla fall) och vet inte vilket som är rätt. Men jag tror första benet är TX... jag ändrade till det i sista sekund innan beställningen...
Var köper man Atmega 2560 i qfp 100 kapsel? Dom jag tittat på är mycket dyrare än ett komplett MEGA-kort... Jag har ingen lust att löda loss kretsen från en Mega innan montering även om boatloadern är med 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...



Towil

#1172 » 09:47:52, 06-02-2018
  • Överför markerat ord till lexikonet

Är ju en udda MCU så styckpriset blir högt om du kollar mot klon megakort. Gamla 8-bit mcu är inget man använder när man behöver lite mera kraft längre.
Volumerna ligger på andra typer så som alla ARM varianter från olika tillverkare.
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

eqlazer

#1173 » 21:45:05, 06-02-2018
  • Överför markerat ord till lexikonet

Man kan tro att det skulle vara 50% chans att man får rätt när det finns en RX och en TX. Men jag skulle nog hävda att det är närmare 100% att man gör fel första gången :)
Inte fel att stoppa in lite nollohmare i signalvägarna om man vill underlätta experimenterandet. Blir enklare att patcha om ifall det finns lite lödyta tillgänglig.
När man sedan tar steget från prototyp så kan man ta bort såna funktioner som bara tar plats och kostar extra (komponenter, yta, produktionstid) utan att tillföra något värde längre.
eqlazer
Fler än 100 inlägg
 
Blev medlem: 19:03:25, 06-01-2015
Ort: Göteborg / Lysekil
Sverige

Janson1 (trådstartaren)

#1174 » 22:34:14, 06-02-2018
  • Överför markerat ord till lexikonet

Ja detta återstår att se... jag räknar denna första serie som just prototyp även om det inte blir fler, jag är van vid att även om man tror sig tänkt på allt så blir det alltid nya grejer som dyker upp.
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...

Towil

#1175 » 23:02:41, 06-02-2018
  • Överför markerat ord till lexikonet

Är bara att kolla hos arduino.cc. Där finns bilder och scheman.
https://store.arduino.cc/arduino-nano
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

Janson1 (trådstartaren)

#1176 » 08:19:55, 07-02-2018
  • Överför markerat ord till lexikonet

Nu har jag ju inte samma USB krets, jag har CH 340G så jag letade från ett annat utgångsläge. Men det blir väl som eqlazer skriver ändå... Får återkomma i ärendet om nån vecka.
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...

Towil

#1177 » 09:23:08, 07-02-2018
  • Överför markerat ord till lexikonet

Nä , men det blir samma kopplning om de skall fungera lika som ett original.
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

Janson1 (trådstartaren)

#1178 » 00:04:26, 09-02-2018
  • Överför markerat ord till lexikonet

Realtidsklockan DS3234 har kommit men att få det funka var svårare... Oturligt nog har jag inget batteri till den men det skall tydligen fungera ändå. Får läsa på lite mera.
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...

Towil

#1179 » 09:00:19, 09-02-2018
  • Överför markerat ord till lexikonet

Nästan samma som jag kör fast min är I2C. Exakt men dyr.
Towil @ [Allmänt] Towil's arduino och elektronik projekt
Om du inte har så att du kan ställa in tiden får du först initiera den med rätt datum och tid. Sedan får man ta bort det i koden och lägga in koden där man läser från klockan.
Har inte tillgång till min kod förän i kväll.
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

Janson1 (trådstartaren)

#1180 » 11:44:22, 09-02-2018
  • Överför markerat ord till lexikonet

Jag får bara klockan att funka, eller bara SD-kortet att funka. Men bägge tillsammans går inte. Det räcker att ha sladden i till SD-kortläsaren så ger klockan upp... Jag kör klocka och SD-kort parallellt med varsin CS, ben 6 för SD och ben 10 för klockan.
Ja förresten, här är koden:
Kod: Markera allt
   
    #include <SD.h>                                  // SD bibliotek, hjälpprogram för sd-kortet
    #include <DS3234.h>
   
   
    char x;                                          // x = A eller B som aktiv ECU
    int ecuAktiv = 3;                                // pulsingång vevaxelgivare, (aktivt hög).
    int inpin3 = 2;                                  // pulsingång 2 pulser per varv till beräkning av motor/propvarv.
    int gasvalue;                                    // gasvärde från poten 0-1023
    int sprSignalin = 8;                             // ansluts till valfri spridarutgång eller sprcontrol, valfritt
    float sprTid;                                    // spridaröppningstid i % (av halvt motorvarv)
    float liter;                                     // liter/timma
    int chipSelect = 6;                              // chip select pin for the MicroSD Card Adapter       
    long varvtalprop;                                // propellerns varvtalsvärde i uS
    long puls, varvtalmotor;                         // pulstid och motorvarvtalsvärde i uS
    int readECUAvoltage;                             // innan volt på ECU A 1-1023
    int readECUaltvoltage;                           // innan volt på ECU B 1-1023
    int engineTemp;                                  // motortemp 0-130 grader
    int turboAirTemp;                                // laddlufttemp 0-130 grader
    int ambientTemp;                                 // omgivningstemp -20 -> 60 grader
    int atmTryck;                                    // atmosfärstryck 1030 till 700 mBar
    float ECUAvoltage;                               // ECU A 0,0 till 6,0 volt
    float ECUaltvoltage;                             // ECU B 0,0 till 6,0 volt
    int turbotryck;
   
   
   
    DS3234 rtc(10);
    File motor;                                       // filnamn "motor" är vald

void setup()
{
      pinMode(ecuAktiv, INPUT_PULLUP);               // satt aktiv ECU som ingång med pålappmotstånd                         
      pinMode(sprSignalin, INPUT);                   // från en valfri spridare eller från sprControll                                                                                                     
      pinMode(inpin3,  INPUT);                       // ingång för att beräkna motor/propvarvtal 
      Serial.begin(250000);                          // startar seriell  data
      pinMode(chipSelect, OUTPUT);                   // chip select pin satt som utgång

  if (!SD.begin(chipSelect))                         // väljer in sd-kortet
   {                                             
    Serial.println("Could not initialize SD card."); // Hjälptext om kort/fil saknas
   }
 
  if (SD.exists("motor.txt"))                        // Om kort och fil finns
   { 
    Serial.println("File exists.");                  // hjälptext om att filen finns
   }
 /*
   rtc.begin();                                    // Här ställer mn in klockan en gång
   rtc.setTime(13, 20, 0);                         // Set the time to 12:00:00 (24hr format)
   rtc.setDate(1, 1, 2014);                        // Set the date to January 1st, 2014 
 */   
}

void loop()
{
  rtc.begin();                                      // startar klockvisning
   
  Serial.print(rtc.getDateStr());
  Serial.print("  ");
  Serial.println(rtc.getTimeStr());
  Serial.print(" -- ");
 
  // Send temperature
  Serial.print("Internal temp: ");
  Serial.print(rtc.getTemp());
  Serial.println("C");
  //rtc.close();
   
   motor = SD.open("motor.txt", FILE_WRITE);        // öppnar "motor.txt" för att skriva in data
  if (motor)                                        // om filen "motor" finns
   {
    //motor.print("TIME ");                           // skriver tidsangivelse
    //motor.print(millis()/60000);                    // i minuter från strömsättning
    motor.print(",  PS ");                            // PS = Power Setting
    motor.print(gasvalue);                          // gasvärde i %
    motor.print(",  RPM ");                           // skriver RPM
    motor.print(varvtalmotor);                      // motorns varvtal per minut
    motor.print(",  TP ");                            // TP = Turbo Pressure i mBar
    motor.print(turbotryck);                        // turbotrycksvärdet i mBar
    motor.print(",  ECU V ");                         // ECU V = ECU:ns batterispänning
    motor.print(ECUaltvoltage);                     // skriver i volt med två decimaler
    motor.print(",  TOT ");                           // TOT = Turbons Out Temp
    motor.print(turboAirTemp);                      // skriver temperaturen i celsius
    motor.print(",  CT ");                            // CT = Cooling Temp
    motor.print(engineTemp);                        // skriver temperaturen i celsius
    motor.print(",  AP ");                            // AP = Ambient Pressure
    motor.print(atmTryck);                          // skriver trycket i mBar
    motor.print(",  AT ");                            // AT = Ambient Temp
    motor.print(ambientTemp);                       // skriver temperaturen i celsius
    motor.print(",  IT ");                            // IT = Injector onTime
    motor.print(sprTid);                            // skriver ut i %
    motor.println("%");                             // % tecken
    motor.close();                                  // efter skrivning så stängs filen
    }
   else
    {
     Serial.println("Could not open file (writing)."); // om kort saknas/trasigt skrivs detta istället.
    }
 
  delay(2500);                                     // Ger ett nytt värde var tredje/fjärde sekund


 
 
  gasvalue = analogRead(A0);                        // läser av gasreglagevärde 1-1023
  turbotryck = analogRead(A4);                      // läser av turbotrycket 1-1023
  atmTryck = analogRead(A6);                        // läser av atmosfärstrycket 1-1023
  readECUAvoltage = analogRead(A7);                 // läser av ECU A spänning 1-1023
  readECUaltvoltage = analogRead(A5);               // läser av ECU B batterispänning 1-1023
  engineTemp = (5.0* analogRead(A1)*100.)/1024;     // LM-35 tempgivare blir motortemp C grader
  turboAirTemp = analogRead(A2);                    // NTC motstånd som mäter laddlufttemp C grader
  ambientTemp = analogRead(A3);                     // läser av omgivnings NTC motståndet 1-1023
 
  gasvalue = map(gasvalue,0,1023,0,100);            // gasreglaget blir 0 till 100 % effekt börvärde
  turbotryck = map(turbotryck,0,1023,100,3000);     // turbotrycket blir 400 till 4000 mBar
  atmTryck = map(atmTryck, 0,1023,100, 3000);       // atmosfärstrycket blir ocalibrerat mBar.
  ECUAvoltage = readECUAvoltage *(8.0/1023.0);      // ECU A drivspänning till 10 volt
  ECUaltvoltage = readECUaltvoltage *(28.3/1023.);  // ECU B batteripänning till 23,5 volt
  ambientTemp =map(ambientTemp,0,1023,60,-20);      // omgivningstemperatur -20 till 60 G c med en NTC
  turboAirTemp = map(turboAirTemp,0,1023,60,-20);
  sprTid = pulseIn(sprSignalin, HIGH);              // mäter in valfri spridares ontid i uS
  sprTid = sprTid/puls*100.;                        // gör om ontiden från uS till procent
  liter = sprTid * varvtalmotor /150;               // visar liter/timma baserat på spridaröppningstid
                                         
                                                    // och antal öppningar via motorns vartal, /150 skall provas ut...

  if (digitalRead(ecuAktiv)== HIGH)                 // känner av vilken ECU som är aktiv
   {
      x =  'A';                                       // om A är hög visas A som aktiv
   }
  else
   {
    x =  'B';                                       // om A är låg visas B som aktiv
   }
 
 
 
  Serial.print("Gasvalue ");                        // skriver ut div realtidsvärden
  Serial.print(gasvalue);                           // samtliga värden är självförklarande
  Serial.print("% ");                               // via datorns monitor...
 
  Serial.print("Turbovalue ");
  Serial.print(turbotryck);
  Serial.print(" mBar  ");
 
  Serial.print("Turbo Air Temp ");
  Serial.print(turboAirTemp);
  Serial.println(" Grader C.");
 
  Serial.print("Absoluttryck  ");
  Serial.print(atmTryck);
  Serial.print(" mBAR  ");
 
  Serial.print("ECU A ");
  Serial.print(ECUAvoltage);
  Serial.print(" Volt  ");
 
  Serial.print("ECU B ");
  Serial.print(ECUaltvoltage);
  Serial.println(" Volt");
 
  Serial.print("Engine Temp ");
  Serial.print(engineTemp);
  Serial.print(" Grader C. ");
 
  Serial.print("Ambient Temp ");
  Serial.print(ambientTemp);
  Serial.print(" Grader C.");
 
  Serial.print(" ECU ");
  Serial.print(x);
  Serial.println(" Aktiv");
 
  Serial.print("Motor ");
  Serial.print(varvtalmotor);
  Serial.print(" RPM");
 
  Serial.print("  Propeller ");
  Serial.print(varvtalprop);
  Serial.println(" RPM ");
 
 
  if (varvtalmotor >=3400)                           // max pulslängd tomgång, >= 3400 mikrosek
   {                         
    varvtalmotor = 3400;                             // om stillastående/startmotorvarv så blir motorvarvet noll till ev varvräknare
   }
  varvtalmotor = map(varvtalmotor,0,5100,0,255);     // 100 till 5100 uS görs om till 0 till 255 (PWM)
 

 
  Serial.print("Pulswidth ");                        // fortsättning div realtidsvärden
  Serial.print(varvtalmotor);                       
 
  Serial.print(" spridare ");
  Serial.print(sprTid);
  Serial.print(" % open ");
  Serial.println("*Sent from SD-card Control*");
  delay(1000);                                     
 
      puls = pulseIn(inpin3, LOW);                   // väntar in nästa puls, Triggar på nersidan
                             // vid stillastående motor blir det en timeout varje sekund.
      varvtalmotor = (1000000/puls)*30.06;           // pulsbrädden görs om till RPM motor
      varvtalprop = varvtalmotor *0.625;             // RPM motor görs om till RPM propeller
}
// end of loop____________________ 

Det här SD-kortet innehåller ju ingen processor utan kortet på plats, det är bara en signalomvandlare från/till 3,3/5volt, den borde väl inte störa?
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...

Towil

#1181 » 11:56:54, 09-02-2018
  • Överför markerat ord till lexikonet

Kolla att inte båda CS är aktiva samtidigt. Du kan bara köra en av dem åt gången.
Samt kolla att det inte är något som drar ner/upp SPI/CS portarna på SD kort sidan.
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

Towil

#1182 » 12:06:50, 09-02-2018
  • Överför markerat ord till lexikonet

Jo, för att kunna dela buss måste slaven kunna gå i tri-state(high imp.) när CS är hög.
Användarvisningsbild
Towil
Moderator
Moderator
 
Blev medlem: 20:00:40, 18-08-2007
Ort: Nybro
Sverige

Janson1 (trådstartaren)

#1183 » 12:24:36, 09-02-2018
  • Överför markerat ord till lexikonet

Jag misstänker att där är felet, SD-slavkortet ligger nog och belastar...
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)

#1184 » 00:36:04, 10-02-2018
  • Överför markerat ord till lexikonet

Har inte hunnit, inte blivit av men jag tänkte lägga ett par motstånd i serie med signaltåtarna på SD-kortet för att se om det blir bättre.
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)

#1185 » 17:40:58, 10-02-2018
  • Överför markerat ord till lexikonet

Med motstånd mellan ca 280 till 680 ohm så stör dom inte varandra så jag tog ett högre medelvärde av 560 ohm. Nästa problem är att när jag kallar på tid för att sen lägga in på minnet så krånglar det men om jag bara skall skriva ut tiden på serialen, då funkar det. Att först ta emot data och sen sända tillbaka i samma ledning men till en annan enhet skiter sig... Jag blir nog tvungen att vänta in Atmega 2560 kretsen som har två MOSI, MISO, SCK... Om nu ingen annan har nåt bättre förslag?
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