Antisladd radiostyrd bil V2

Berätta om dina pågående projekt.
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Antisladd radiostyrd bil V2

Inlägg av Micke_s »

Nu börjar det bli dax att avsluta sina studier efter man jobbat i 2.5 år, blev en del som kom mellan.

Jag kommer uppdatera första inlägget allt eftersom projektet fortlöper. Skapar en ny projekttråd eftersom jag har bytt det mesta (gamla tråden finns på

Stort tack till Martin, min förra exjobbshandledare som är snäll och svarar på diverse frågor/funderingar

http://elektronikforumet.com/forum/view ... hp?t=27149)

Själva algoritmen som kommer köra i radiobilen utnyttjar gyro i första hand men jag har båda gyro:n och accelerometer.

Jag har valt att byta ut gumstix:en mot något lite mer lättarbetad, open embedded är inte speciellt snabbt att
jobba i anser jag. Valet föll för en STM32 Primer2, då finns mycket färdigt och det som behövs komplementeras med
är en extra modul med mina sensorer i.

Basplattan består av en bit mönsterkort som jag har fäst magneter och gjort styrning med hjälp av H0:e spårbitar.

Expansionskortet är tillverkat med hjälp av en brytbladskniv, inte speciellt snyggt men duger fint för detta.
Inte speciellt mycket som ska monteras. Det som är riktigt smått är redan monterad på separata kort.

v33
20/8 Sätter upp openSSH och installerar git på min server hemma.
21/8 Börjar sätta upp miljön för STM32
22/8 Börjar rita på ett expansionkort till Primer2

v34
23/8 tillverkar början på expansionkortet
24/8 Har en kod som bilkar en led på Primer2
25/8 uppstartsmöte hos ÅF.
26/8 monterar attiny2313 på expansionkortet och drar ihop attiny2313 och STM32 spi
27/8 skriver kod för köra spi slave i attiny2313 med USI modulen och skriver kod för STM32 spi

v35
30/8 monterar gyro kortet och börjar skriva i2c master mjukvarubaserad för attiny2313
31/8 Skriver radio drivare för radiomodulen. SSD disk anländer, ominstallerar min dator till windows 7x64
1/9 installerare verktyg på win7 och debuggar klart i2c master drivrutierna för attiny2313
2/9 monterar elektronik för konvertera servo signalerna från 2.84volt till 5volt

v36
6/9 skriver kod för hantera servo signalern:a
7/9 förflyttar motordrivningen på radiobilen och tillverkar en platta som Primer2 ska fästa i.
8/9 Implementerar en timeout funktion för veta när vi har tappat radio:n
9/9 monterar insignalerna för tachometrarna och löder om lite kablar på radiobilen
11/9 Skriver kod för tachometrarna
12/9 Felsöker spi kommunikationen mellan attiny och stm32

v37
13/9 får ADC:n att fungera och skriver denna tråd.
14/9 sätta upp SD kortet över SDIO och fatfs
15/9 00:01 sätter upp ett testcase för fatfs (saga har svårt att sova...)
15/9 börjat implementera FreeRTOS
16/9 felsökt FreeRTOS och fått två trådar att snurra
19/9 skriver kod för datainsamling

v38
20/9 skriver kod för datainsamling
21/9 skriver kod för datainsamling
22/9 Möte på ÅF.
23/9 felsöker varför det tar tid att starta upp SDHC kort, har testat med ett vanligt SD-kort som startar upp direkt.
24/9 mer felsökning SDHC och hittar felet

v39
28/9 installerat tex live och lite verktyg för kunna skapa rapporten
29/9 börjat smått på rapporten
30/9 testat att kompilera mitt första tex dokument

v40
inte mycket exjobb gjort denna vecka.
10/10 studerat modellen som behövs för köra simulering i simulink

v41
11/10 kodat i msimulink/matlab
12/10 --||--
13/10 --||--
14/10 --||--
15/10 modellen i princip klar, körbar
17/10 kört radiobilen på en stor grusplan i cirklar för kunna parameteroptimera modellen

18/10 börjat kolla hur man parameteroptimiserar i simulink
19/10 fortsätter med parameteroptimiseringen
20/10 Har byggt en funktion som parameteroptimiserar
21/10 testar
22/10 börjar felsöka modellen, något är knasigt

25/10 hittar ett fel och lägger till lite filter och testar vidare
26/10 fortsätter felsökning, modellen oscillerar för tillfället
27/10 -- || --
29/10 Har hittat felet i modellen tror jag, det var att jag jämförde verkligheten och modellen:s yaw gyrot i olika enheter. Ena i grader och den andra radianer...

2/11 modellen går att pameteroptimisera, något fel med hastigheten, vet ej om det är verkligheten eller modellen som inte stämmer.
3/11 möte med min handledare Felix på ÅF.

8/11 städat kod och gjort ett linkerscript

17/11 skrivit kod för kunna ha en konsol över radio-uart:en och irq problem...
18/11 börjat på en autopilot med ett c# uppladdningsprogram.
19/11 fixat att den går att stänga av på med knapp.
20/11 fixat att det går att ställa in tid och datum, kört med bilen lite för kunna verifiera autopiloten.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Senast redigerad av Micke_s 20 november 2010, 14:30:13, redigerad totalt 12 gånger.
janbjorn
Inlägg: 271
Blev medlem: 3 december 2008, 16:22:39
Ort: Trollhättan

Re: Antisladd radiostyrd bil V2

Inlägg av janbjorn »

Kul projekt! Jag har gått och funderat i liknande banor, fast då med borstlös motor och en motor per hjul så att man kan reglera hjulhastigheten individuellt. Tanken var att köra en Arduino som huvudkontroller och skicka begärt hjul-rpm till vardera hjuls fartreglage (som kör en intern PID regulator på varvtal). Det kräver dock lite mer anpassning av hårdvaran (bilen) för att få in 4 motorer. Så det slutade med att jag lade ner projektet i brist på tid och tillgång till svarv/fräs och satte istället ett heading hold gyro på styrningen på min E-Revo (vilket fungerar förvånansvärt bra).

Jag kommer följa ditt bygge med stort intresse!
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Re: Antisladd radiostyrd bil V2

Inlägg av Micke_s »

Sådär nu har man slagit ihjäl en bugg i sdcard.c.
Buggen orsakar att det tar tid att starta upp sd-kortet.

denna patch är giltig för V3.1.0 av st-microelectronics sdcard.c

Kod: Markera allt

--- sdcard.c
+++ sdcard.c
@@ -218,6 +218,11 @@ SD_Error SD_PowerON(void)
     /* CMD Response TimeOut (wait for CMDSENT flag) */
     return(errorstatus);
   }
+  
+  //bugfix working for Sandisk 4Gb SHDC 2.0
+  //2010-09-24 Mikael Sundin
+  volatile int i;
+  for(i=0;i<5000;i++){;}
 
   /* CMD8: SEND_IF_COND --------------------------------------------------------*/
   /* Send CMD8 to verify SD card interface operating condition */
Skriv svar