Motorstyrning - 32 bit @ 72MHz

Planering och tankar kring eventuella framtida projekt.
eFFeT
Inlägg: 70
Blev medlem: 13 oktober 2009, 20:23:29
Ort: Luleå

Motorstyrning - 32 bit @ 72MHz

Inlägg av eFFeT »

Hej alla!

Jag är så sjukt less mitt VEMS v3.3 på min bil! (Supra MK3 -90) http://www.garaget.org/effet_

VEMS har sjukt dålig Acc.enrichment algoritm. Cranking egenskaperna är kassa. Man måste ha effektmotstånd för att driva lågohms spridare. Den klarar bara av 8 spolar- och 8 spridar-kanaler och då får du inte använda nån av dom till tomgångsmotor, boost controll eller annat gott. Finns mycke mer som jag stör mig på..
VEMS går bara på 16MHz och det är alldeles för lite om man ska köra en 6a på 9000 rpm. Alla analoga konverteringar, beräkningar för all PID reglering, tändpunkterna och mycket mer blir försämrat när processorn blir hårt belastad. Man kan till och med märka av det på acceleration enrichment när man tvärgasar, den mäter TPSen så sällan att man hinner känna lagget... de är inte okej.
Sen så har den inte fullt stöd för CAN och LIN.

Sitter och ritar på ett system nu som ska ha domhär specsen:
72 MHz
128 MB loggdata
12 tändkanaler
16 spridarkanaler
Pri-trigg Hall/VR
Sec-trigg Hall/VR
Wheel speed Hall/VR
4 PWM kanaler. tex Boost control, Gasspjäll, tomgångsmotor, misc.
16 Analoga ingångar (MAP, IAT, CLT, TPS, 2xEGT, 2xWBO, oljetryck, bränsletryck, Volt, Avgastryck, 2x misc resestiva, 2x 0-5V)
2 Analoga utgångar. (externa mätare)
8 Digitala utgångar. (relä och lampor)
8 Digitala ingångar.
LCD
CAN 2.0A & 2.0A kompatibel
LIN
USB (för kalibrering)

CDI med justerbar 90-300mJ gnista för att kunna tända allt från bensin till metanol i alla tänkbara laddtryck. (MSD har 115mJ på deras Street versioner och 325mJ på deras dragracing modeller)

Ion-sense. Känner ledningsförmågan av gaserna i cylindern efter den skickat gnista och kan på så sätt få fram vid vilken punkt man har högst cylindertryck och om knack eller misständning inträffat. Justera tändningen automatiskt individuellt på varje cylinder så att trycktoppen är ca 15grader efter TDC och justera den om det knackar.

Automatisk identifiering av fördröjning, ramp up och ramp ner tid på varje spridare. Känner av om det är låg eller hög ohm och justerar för de.

Har säker glömt nå.. Det är bara i planerings/ritningsstadiet än.. Men förhoppningsvis så kanske jag får lyfta över den till Projekttråden i framtiden..

Kommentera!! :P
Senast redigerad av eFFeT 26 januari 2010, 23:01:06, redigerad totalt 1 gång.
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av E85 »

Tycker det låter som det kan bli riktigt bra det där. Finns det nån speciell anledning till att du valt 60 MHz och inte mer?
Det vore kanon med 3-axlig accelerometer och kanske plats på PCB:t för gyro så det går att göra lite roliga beräkningar.
Det finns 2GB minneskort för under hundringen så då kan man logga direkt till filer, t.ex en ny loggfil för varje gång man startar bilen?
Vad har du tänkt för LCD (storlek, upplösning, pris...)? Jag skulle nog föreslå en 128x64 monokrom ifall man vill få ner priset. Det finns säkert bättre men den här tycker jag om. Finns i flera färger.

Har själv ett Megasquirt som ligger men det kommer nog att vara helt ute innan jag är så pass klar med bilen att jag behöver sprut. :lol:
danielr112
Inlägg: 8092
Blev medlem: 18 januari 2009, 00:48:24
Ort: Alvesta, Småland

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av danielr112 »

Det med loggning. 16Mb är inte mycke om man börjar logga allt. Ev möjlighet att ha usb-minne i porten för usb och få loggningen dit?.
Alt större minne direkt på kortet.
eFFeT
Inlägg: 70
Blev medlem: 13 oktober 2009, 20:23:29
Ort: Luleå

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av eFFeT »

Jag har redan byggt ett ESP system med 3-axlig accelerometer och gyro. Samt att det tar in hastigheten från alla hjulen. De kan snacka via CAN om jag vill.. Men visst.. nog kan man lägga dit ett gyro och accelerometer, med de är sjukt dyra kretsar. Bättre att göra en liten tillägsmodul om man vill ha den infon tycker jag iaf..
Atmels AT91SAM7A klarar bara 60MHz under worst case senarios. Går säkert att överklocka lite men jag börjar såhär. Första gången jag använder en 32 bits SAM7 kärna.

Jo tanken är ju att den alltid skulle logga senaste körningen och när kortet började bli fullt så skulle den radera den första körningen osv.. Jag har ett 16MB minneskort liggandes här hemma så det var därför jag bara skrev 16MB. Har inte pillat nånting tidigare med minneskort, vet inte hur stora kort den klarar av. Men det är ganska låt prio på det just nu, kommer nog till det senare.

Just nu håller jag på att bygga en smidig WBO kontroller.. lite halvmeckigt måste jag säga :P. Men jag tror jag kommit på en billig och bra lösning nu som klarar alla Bosch LSU utan att behöva kalibreras varje gång. Den klarar ju förstås också vanlig smalbandare. Har inte testat nått på bänk än, bara papper och penna hittills.

/mvh Fredrik
eFFeT
Inlägg: 70
Blev medlem: 13 oktober 2009, 20:23:29
Ort: Luleå

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av eFFeT »

E85 skrev: Vad har du tänkt för LCD (storlek, upplösning, pris...)? Jag skulle nog föreslå en 128x64 monokrom ifall man vill få ner priset. Det finns säkert bättre men den här tycker jag om. Finns i flera färger.
Kollade in ditt bygge med LCDn. Snyggt! :) Jag hade bara tänkt mig en alfanumerisk display som kan visa det viktigaste tex. RPM, Lambda, temperaturer, tryck osv.. Är det mycke krångligare att köra med en display som du körde med? Såg att dom var ju inte nå dyrare än en alfanumerisk.
Vet du om AT91SAM processorerna går att klocka mycke?
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av E85 »

Aha jag trodde det var ARM9 du funderade på. Såg nån som klarade 400MHz men det är väl annat med ARM7. Har ingen koll på dom där.
Jo jag trodde det fanns 3-axliga accelerometrar med relativt enkelt lödbar kapsling till vettigt pris men verkar inte gå att få tag på.
Jag kopplade ett 2GB microSD till en ATmega168 via SPI så det ska inte vara några problem.

Vad använder du för verktyg för att utveckla?

edit: Det är inte så hemskt krångligt att använda displayen. Jag skrev ganska enkel kod för att styra den seriellt. Behövs 4 eller 5 ledare. Borde inte vara några problem alls på en så pass kraftig MCU. Man behöver några kondningar och -10V men det går att generera enkelt med två stycken TPS60400. Jag har kört den på 5V/-10V. Vet inte hur det blir med 3.3V...
eFFeT
Inlägg: 70
Blev medlem: 13 oktober 2009, 20:23:29
Ort: Luleå

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av eFFeT »

Okej. Nice! Jag har funderat på om jag ska ta och bygga en egen displayenhet som tar in data från både ECUn, ESPn och andra saker via CAN och LIN för att sen kunna presentera det med nått snyggt gränssnitt på en stor LCD TFT skärm isf dom vanliga analoga mätarna. :) Men det blir ett senare projekt.

Jo jag har också kollat på SAM9 processorerna, det som skrämde mig var ju alla 324 bollar under processorn som ska fast. Eller de är väl inte de som är de största problemet, det är ju att kunna dra ut alla 324 ledarna på ett 2 lagers kretskort. Det kan bli lite halvknepigt :P

Jo det finns ju smidiga accelerometrar men dom är som sagt dyra och skickar ut sjukt mycke störningar. Sen så monterar man ju ECUn där den får plats, det kan ju bli i alla möjliga vinklar. Det är ju inga problem att beräkna om vektorerna för accelerometern men för gyrot så måste det ju vara plant med bilen..

Härligt! Då är de ju bara att smacka dit ett 2 Gigs kort direkt :)

edit: Jag använder OrCAD.
niklo
Inlägg: 150
Blev medlem: 16 september 2009, 11:46:48
Ort: Norrköping

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av niklo »

det kanske kan vara vettigt att skilja ut det kritiska och köra på en egen mcu!?
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av E85 »

ARM9 finns även i hanterbara kapslar:
http://search.digikey.com/scripts/DkSea ... 260B-QU-ND

Fast visst, ARM7 lär ju räcka. Verkar som ARM9 inte har CAN inbyggt heller så. Men jag ska inte uttala mig om dom där för jag har ingen koll alls på hur dom fungerar.

Det där med att bygga upp i olika moduler kan nog vara en bra grej. Alla vill kanske inte ha display, eller att nån vill bygga en helt egen instrumentpanel osv.

Gyro och accelerometer kan man nog stryka. Bättre att göra en liten tilläggsmodul för det också då som sagt. Risken är bara att det blir väldigt dyrt att ha en massa MCUs som ska kommunicera med varandra.
eFFeT
Inlägg: 70
Blev medlem: 13 oktober 2009, 20:23:29
Ort: Luleå

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av eFFeT »

niklo skrev:det kanske kan vara vettigt att skilja ut det kritiska och köra på en egen mcu!?
Jo jag funderade först på de. Men då hade jag tänkt använda 2 st 8-bitars MCUs. Sen snubblade jag över Atmels AT91SAM7A. Den har nästan allt jag behöver! Och 60MHz ska räcka. Om folk lyckats få till de på 16MHz 8-bitars MCU så borde 60MHz 32-bitars räcka och bli över... lite över iaf. Måste lämna ganska mycket för kommunikationen mellan andra enheter i bilen.
Eller tänker du för att ha redundas? De kan ju vara intressant för "viktiga" system som har med bromsar att göra. Men om motorn dör spelar ju som ingen roll egentligen.

Tanken är att kunna stoppa in den här enheten i en "Ny bil" och efter lite reverse engineering så kanske man kan få det att lira med alla andra enheter i bilen. Allt sker ju med CAN och LIN kommunikation nu för tiden. Drömmarna är stora.. men de kostar ingenting att drömma ;)

Nice. Den där ARM9 hade jag missat. Men jag tror ändå att AT91SAM7A är rätt väg. Spana in alla 9 Timers, 8 PWM kanaler och 16 ADC!! :)
niklo
Inlägg: 150
Blev medlem: 16 september 2009, 11:46:48
Ort: Norrköping

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av niklo »

njae, jo kanske. tänkte nog mest att den "kritiska" processorn kunde bli något mindre komplex och inte vara utsatt för lek med ui osv
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av Micke_s »

Tycker också du ska separera UI och det kritiska.
Ta en titt på STM32 cortex-m3, den tycker jag är trevlig.
eqlazer
Inlägg: 923
Blev medlem: 22 september 2007, 13:53:45
Ort: Göteborg

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av eqlazer »

E85 skrev:Verkar som ARM9 inte har CAN inbyggt heller så.
Tror inte jag hittills sett några ECUer med ARM, de har inte varit tillräckligt tillförlitliga och inte många som varit automotiveklassade. PowerPC däremot är vanligare (om vi pratar de lite större).
Men det verkar som ARM försöker slå sig in på automotivemarknaden, så det kommer säkerligen fler ARM-kretsar med CAN inbyggt framöver.
eFFeT
Inlägg: 70
Blev medlem: 13 oktober 2009, 20:23:29
Ort: Luleå

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av eFFeT »

Hmm.. Har kollat på dendär STM32 cortex-m3 nu.. Den verkar också fin. Är mest insatt i Atmels produkter dock. Jag tycker dom är hur robusta som helst. Har då inte lyckats döda en än, å jag har inte varit allt för snäll mot dom. :P hehe

Ska ha de i åtanke att köra med 2 MCUs.. Men jag tror det är lite overkill.
AT91SAM7A kör ju med en ARM7 kärna, den har ju 2 CAN interface. De som är så bra med CAN är ju att det sköter sig själv nästan. Som att du får ett brev och kan läsa det när du känner för det så det belastar inte processorn så mycket. Allt handlar ju om att prioritera och optimera i mjukvaran.
Det är ju nästan bara tändningen som är jätteviktig och det handlar bara om att slå på en kanal i en ungefärlig tidpunkt. Sen släppa den i en exakt tidpunkt. Om en spridare är öppen 0.1mS för mycket spelar ingen roll. Och alla ADC omvandligar har fortfarande lägst prio. Men det finns gott om tid för att göra det.
Men projektet drar nog inte igång för än efter jul. Måste bygga några nya kammar och justarbara kamdrev till Supran först och bygga dit 2 större turboagg :D hö hö
henkebenke
Inlägg: 515
Blev medlem: 31 maj 2003, 10:42:37
Ort: Helsingborg

Re: Motorstyrning - 32 bit @ 60MHz

Inlägg av henkebenke »

Atmel har cortex-M3 numera, SAM3U kallar de sin för: http://www.atmel.com/products/at91/sam3 ... ily_id=605.

Vilket jäkla motorbygge! Vad räknar du med att kunna plocka ur den?
Skriv svar