Poll
Question: Er Arduino bedre enn Basic Stamp 2?
Ja - 25 (92.6%)
Nei - 2 (7.4%)
Total Voters: 12

Pages: 1 [2]   Go Down
Author Topic: Starte med Arduino  (Read 4235 times)
0 Members and 1 Guest are viewing this topic.
Luleå, Sweden
Offline Offline
Newbie
*
Karma: 0
Posts: 34
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Det var löjligt enkelt, gör bara som killen på youtube så har du GPS data på din serial monitor inom några minuter.
Beställde från

http://www.active-robots.com/products/parallax/parallax-compass-gps-sensors.shtml


Änvänd denna koden om du vill ha lite mer lättläst data.
Code:

 #include <string.h>
 #include <ctype.h>

 int ledPin = 13;                  // LED test pin
 int rxPin = 0;                    // RX PIN
 int txPin = 1;                    // TX TX
 int byteGPS=-1;
 char linea[300] = "";
 char comandoGPR[7] = "$GPRMC";
 int cont=0;
 int bien=0;
 int conta=0;
 int indices[13];

 void setup() {
   pinMode(ledPin, OUTPUT);       // Initialize LED pin
   pinMode(rxPin, INPUT);
   pinMode(txPin, OUTPUT);
   Serial.begin(4800);
   for (int i=0;i<300;i++){       // Initialize a buffer for received data
     linea[i]=' ';
   }  
 }

 void loop() {
   digitalWrite(ledPin, HIGH);
   byteGPS=Serial.read();         // Read a byte of the serial port
   if (byteGPS == -1) {           // See if the port is empty yet
     delay(100);
   } else {
     linea[conta]=byteGPS;        // If there is serial port data, it is put in the buffer
     conta++;                      
     Serial.print(byteGPS, BYTE);
     if (byteGPS==13){            // If the received byte is = to 13, end of transmission
       digitalWrite(ledPin, LOW);
       cont=0;
       bien=0;
       for (int i=1;i<7;i++){     // Verifies if the received command starts with $GPR
         if (linea[i]==comandoGPR[i-1]){
           bien++;
         }
       }
       if(bien==6){               // If yes, continue and process the data
         for (int i=0;i<300;i++){
           if (linea[i]==','){    // check for the position of the  "," separator
             indices[cont]=i;
             cont++;
           }
           if (linea[i]=='*'){    // ... and the "*"
             indices[12]=i;
             cont++;
           }
         }
         Serial.println("");      // ... and write to the serial port
         Serial.println("");
         Serial.println("---------------");
         for (int i=0;i<12;i++){
           switch(i){
             case 0 :Serial.print("Time in UTC (HhMmSs): ");break;
             case 1 :Serial.print("Status (A=OK,V=KO): ");break;
             case 2 :Serial.print("Latitude: ");break;
             case 3 :Serial.print("Direction (N/S): ");break;
             case 4 :Serial.print("Longitude: ");break;
             case 5 :Serial.print("Direction (E/W): ");break;
             case 6 :Serial.print("Velocity in knots: ");break;
             case 7 :Serial.print("Heading in degrees: ");break;
             case 8 :Serial.print("Date UTC (DdMmAa): ");break;
             case 9 :Serial.print("Magnetic degrees: ");break;
             case 10 :Serial.print("(E/W): ");break;
             case 11 :Serial.print("Mode: ");break;
             case 12 :Serial.print("Checksum: ");break;
           }
           for (int j=indices[i];j<(indices[i+1]-1);j++){
             Serial.print(linea[j+1]);
           }
           Serial.println("");
         }
         Serial.println("---------------");
        
       }
       conta=0;                    // Reset the buffer
       for (int i=0;i<300;i++){    //  
         linea[i]=' ';  
        
       }                
     }
   }
 }
« Last Edit: March 16, 2010, 04:04:24 pm by Xrim » Logged

Norway
Offline Offline
Newbie
*
Karma: 1
Posts: 44
Arduino rocks harder than ever!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Dette ser ganske vanskelig ut........ Jeg kjøper først en arduino så begynner jeg med prgrammering.........Takk for alle svar, og takk for kodene:) ;D smiley-grin smiley-wink
Logged

Best regards, Fredrik

Luleå, Sweden
Offline Offline
Newbie
*
Karma: 0
Posts: 34
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

KapteinFredrik, jag är också en total nybörjare, jag löste problemet med att kolla runt här på forumet och till sist fatta så mycket att jag kunde kopiera den koden som behövdes och sedan ändra lite i den. Mycket trail and error smiley

Så här långt är jag kommen:


om du beslutar dig med att försöka ändå så hör av dig till mig så kan vi lösa det tillsammans. Just nu har jag fått det att funka men jag vet inte hur det funkar  ;D

P.s GPS:en kostade mig ca 350kr inkusive frakt och har bättre mottagning inomhus än min Garmin för 5500kr.
« Last Edit: March 19, 2010, 02:41:52 pm by Xrim » Logged

Norway
Offline Offline
Newbie
*
Karma: 1
Posts: 44
Arduino rocks harder than ever!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Kjempe kult prosjekt du har der xrim! Hvor er det best å bestille arduino og LCD og litt sånt fra? Www.lawicel-shop.se? Jeg bestiller nok noe i neste uke, jeg skal si i fra når jeg har fått en smiley vet dere hvor jeg får tak i en grei farge LCD? Sparkfun har en billig Nokia 6100 fargge skjerm. Noen erfaringer?
Logged

Best regards, Fredrik

Norway
Offline Offline
Newbie
*
Karma: 1
Posts: 44
Arduino rocks harder than ever!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hvordan lcd er det? seriel? hvor kjøpte du den?
Logged

Best regards, Fredrik

Luleå, Sweden
Offline Offline
Newbie
*
Karma: 0
Posts: 34
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Lawicel är bra att beställa ifrån, som tur är för dig är den svenska kronan svag så det blir billigt för dig att beställa därifrån.
Tror att du skall vänta med att ge dig in på färg LCD.

Jag hade beställt följande från Lawicel
Arduino Starterkit 1   (Köpte det själv och tycker det är bra)
Parallax PMB-648 SiRF GPS
16x2 Char. LCD Blue/White BL (eller 4x20 om du vill ha en stor skärm)

Där har du allt du behöver för att börja experimentera och göra GPS projektet.
Hör av dig så fort sakerna har kommit så går vi igenom allt steg för steg och så förklarar jag det jag kan i koden (Som sagt jag är själv nybörjare).




« Last Edit: March 20, 2010, 10:04:35 am by Xrim » Logged

Norway
Offline Offline
Newbie
*
Karma: 1
Posts: 44
Arduino rocks harder than ever!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

er det best med seriell lcd eller en parallell?
Logged

Best regards, Fredrik

Luleå, Sweden
Offline Offline
Newbie
*
Karma: 0
Posts: 34
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Den här tråden förklarar allt.

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1225643845/7
Logged

Norway
Offline Offline
Newbie
*
Karma: 1
Posts: 44
Arduino rocks harder than ever!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Da har jeg bestilt en arduino, en instruktonsbok og tellymate shield fra elecktrokit;) Kommer 10 mai...
Logged

Best regards, Fredrik

0
Offline Offline
Newbie
*
Karma: 0
Posts: 15
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Noen som vet hvordan en enkelt regner om koordinatene til noe som kan brukes i Google Maps så en ser at det virker? Jeg brukte en eller annen side, men jeg bommet vel med ca 100 km, ble plasert ute i sjøen utenfor Trondheim.
Logged

Norway
Offline Offline
Newbie
*
Karma: 1
Posts: 44
Arduino rocks harder than ever!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Har enderlig fått min arduino:) jeg fikk med tellymate shield. Skal engynn å lære meg den til neste uke etter tentamen og prøve og alt mulig.
Logged

Best regards, Fredrik

0
Offline Offline
Newbie
*
Karma: 0
Posts: 26
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Fixat så jag kan läsa min PMB-648 jag med med Arduino... med ett bibliotek som man hittar här, NMEA-biblioteket: http://code.google.com/p/arducopter/source/browse/#svn/trunk/libraries/GPS_NMEA

Men grejen är att jag ska använda den på mitt quadcopter-projekt, och jag var nyss ute å gick med mottagarn. Uppdaterade inte förrän jag gått c:a 50m, men då vart det en rätt noggrann position. Sen fortsatte den att printa samma koordinat tills jag rört mig 50m till. Så kan vi inte ha det.

Läste sen att det finns nåt "walk mode" här: http://forums.parallax.com/showthread.php?p=933456

Men lyckas inte alls ställa in det med Sirf-programmet även om jag får kontakt med Sirf-programmet med hjälp av ett FTDI-breakout-kort (Comportssimulerande chip som kopplas till USB-porten).

Så jag är rätt besviken att jag inte kan ändra läge den printar i. Nån annan som lyckats?
Logged

Pages: 1 [2]   Go Up
Jump to: