Σελίδα 4 από 5 ΠρώτηΠρώτη ... 2345 ΤελευταίαΤελευταία
Εμφάνιση αποτελεσμάτων : 31 έως 40 από 44

Θέμα: Data logging

  1. #31

    Προεπιλογή

    Χρωσταω να γράψω για τα GPS από ότι είδα. Το είχα ξεχάσει

  2. The Following User Says Thank You to m-power_01 For This Useful Post:

    BILL007 (04-10-12)

  3. #32
    Εγγραφή
    23-12-09
    Περιοχή
    salonica
    Μηνύματα
    13.324
    Thanked
    18605
    Rides
    1

    Προεπιλογή

    Πολλα χρωστας εσυ γενικοτερα παλιοτσιχλιμποχλη.
    sympether with chiefτης

    _________________________________________________

    /
    //Μ3 BORN ON THE RACETRACK TO LIVE IN THE STREETS

  4. #33
    Εγγραφή
    08-01-10
    Μηνύματα
    1.809
    Thanked
    4003
    Rides
    0

    Arrow

    Λοιπόν.

    Η πλατφόρμα που χρησιμοποιώ πλέον είναι το διάσημο εδώ και λίγο καιρό Raspberry PI https://www.raspberrypi.org/quick-start-guide

    Είναι ένα linux box με ARM cpu που στοιχίζει μόλις 25$
    Έχει άπειρες εφαρμογές σαν συσκευή.

    Ξαναέγραψα λοιπόν τα πράγματα που κάνει το Raspberry να συνδέεται με bluetooth με το GPS και το OBD.
    Επίσης, ξαναέγραψα τον κώδικα για το GPS data acquisition και προς το παρών κάνω log gpstime,latitude,longitude,speed(km/h),fix,satellites,altitude(m)

    Εδώ και ο κώδικας για τους πιο περίεργους

    Κώδικας:
    #include <iostream>
    #include <fstream>
    #include <string>
    #include <boost/regex.hpp>
    
    using namespace std;
    
    int main(int argc, const char *argv[])
    {
            string line;
            ifstream myfile ("/dev/rfcomm0");
    
            // get the logfile from the input
            string mylogfile = argv[1];
            cout << mylogfile << endl;
    
            ofstream logfile;
            logfile.open((mylogfile).c_str());
    
            string gpstime,gpslatitude,gpslongitude,gpsfix,gpssat,gpsaltitude,gpsspeedtext;
            int gpsspeed;
    
            // print the header
            logfile << "# header information" << endl;
            logfile << "# gpstime,latitude,longitude,speed(km/h),fix,satellites,altitude(m)" << endl;
    
    
            if(myfile.is_open())
            {
    
                    while(!myfile.eof())
                    {
    
                    getline (myfile,line);
    
                    boost::regex gprmc(".+GPRMC,\\d+\\.\\d+,\\w,\\d+\\.\\d+,\\w,\\d+\\.\\d+,\\w,(\\d+\\.\\d+).+");
                    boost::smatch mgprmc;
                    if(boost::regex_match(line, mgprmc, gprmc,  boost::match_extra))
                            {
                            gpsspeedtext=mgprmc[1];
                            istringstream speedbuf(gpsspeedtext);
                            speedbuf >> gpsspeed;
                            // now we need to convert it to kilometers
                            gpsspeed=1.852*gpsspeed;
                            } // if
    
                    boost::regex gpgga(".+GPGGA,(\\d+\\.\\d+),(\\d+\\.\\d+,\\w),(\\d+\\.\\d+,\\w),(\\d+),(\\d+),\\d+\\.\\d+,(\\d+\\.\\d+).+");
                    boost::smatch mgpgga;
                    if(boost::regex_match(line, mgpgga, gpgga, boost::match_extra))
                            {
                            gpstime=mgpgga[1];
                            gpslatitude=mgpgga[2];
                            gpslongitude=mgpgga[3];
                            gpsfix=mgpgga[4];
                            gpssat=mgpgga[5];
                            gpsaltitude=mgpgga[6];
    
                    logfile << gpstime << "," << gpslatitude << "," << gpslongitude << "," << "," << gpsspeed << gpsfix << "," << gpssat << "," << gpsaltitude << endl;
                            }
    
                    } // while
    
            myfile.close();
            logfile.close();
            } // if
            return 0;
    }

  5. The Following 6 Users Say Thank You to alexk For This Useful Post:

    BILL007 (06-10-12), bill_m3 (06-10-12), m-power_01 (06-10-12), SoNiC_77Gr (06-10-12), Thomelef (06-10-12), wheelman (06-10-12)

  6. #34
    Εγγραφή
    31-12-10
    Περιοχή
    Αθηνα
    Μηνύματα
    489
    Thanked
    740
    Rides
    0

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα απο alexk Εμφάνιση μηνυμάτων
    Λοιπόν.

    Η πλατφόρμα που χρησιμοποιώ πλέον είναι το διάσημο εδώ και λίγο καιρό Raspberry PI https://www.raspberrypi.org/quick-start-guide

    Είναι ένα linux box με ARM cpu που στοιχίζει μόλις 25$
    Έχει άπειρες εφαρμογές σαν συσκευή.

    Ξαναέγραψα λοιπόν τα πράγματα που κάνει το Raspberry να συνδέεται με bluetooth με το GPS και το OBD.
    Επίσης, ξαναέγραψα τον κώδικα για το GPS data acquisition και προς το παρών κάνω log gpstime,latitude,longitude,speed(km/h),fix,satellites,altitude(m)

    Εδώ και ο κώδικας για τους πιο περίεργους

    Κώδικας:
    #include <iostream>
    #include <fstream>
    #include <string>
    #include <boost/regex.hpp>
    
    using namespace std;
    
    int main(int argc, const char *argv[])
    {
            string line;
            ifstream myfile ("/dev/rfcomm0");
    
            // get the logfile from the input
            string mylogfile = argv[1];
            cout << mylogfile << endl;
    
            ofstream logfile;
            logfile.open((mylogfile).c_str());
    
            string gpstime,gpslatitude,gpslongitude,gpsfix,gpssat,gpsaltitude,gpsspeedtext;
            int gpsspeed;
    
            // print the header
            logfile << "# header information" << endl;
            logfile << "# gpstime,latitude,longitude,speed(km/h),fix,satellites,altitude(m)" << endl;
    
    
            if(myfile.is_open())
            {
    
                    while(!myfile.eof())
                    {
    
                    getline (myfile,line);
    
                    boost::regex gprmc(".+GPRMC,\\d+\\.\\d+,\\w,\\d+\\.\\d+,\\w,\\d+\\.\\d+,\\w,(\\d+\\.\\d+).+");
                    boost::smatch mgprmc;
                    if(boost::regex_match(line, mgprmc, gprmc,  boost::match_extra))
                            {
                            gpsspeedtext=mgprmc[1];
                            istringstream speedbuf(gpsspeedtext);
                            speedbuf >> gpsspeed;
                            // now we need to convert it to kilometers
                            gpsspeed=1.852*gpsspeed;
                            } // if
    
                    boost::regex gpgga(".+GPGGA,(\\d+\\.\\d+),(\\d+\\.\\d+,\\w),(\\d+\\.\\d+,\\w),(\\d+),(\\d+),\\d+\\.\\d+,(\\d+\\.\\d+).+");
                    boost::smatch mgpgga;
                    if(boost::regex_match(line, mgpgga, gpgga, boost::match_extra))
                            {
                            gpstime=mgpgga[1];
                            gpslatitude=mgpgga[2];
                            gpslongitude=mgpgga[3];
                            gpsfix=mgpgga[4];
                            gpssat=mgpgga[5];
                            gpsaltitude=mgpgga[6];
    
                    logfile << gpstime << "," << gpslatitude << "," << gpslongitude << "," << "," << gpsspeed << gpsfix << "," << gpssat << "," << gpsaltitude << endl;
                            }
    
                    } // while
    
            myfile.close();
            logfile.close();
            } // if
            return 0;
    }
    Εισαι πολυ μπροστα !!!!

  7. #35
    Εγγραφή
    23-12-09
    Περιοχή
    salonica
    Μηνύματα
    13.324
    Thanked
    18605
    Rides
    1

    Προεπιλογή

    Αλεξη...τα ερωτηματικα ενεργοποιουν την καθε γραμμη?
    sympether with chiefτης

    _________________________________________________

    /
    //Μ3 BORN ON THE RACETRACK TO LIVE IN THE STREETS

  8. The Following User Says Thank You to Thomelef For This Useful Post:

    alexk (06-10-12)

  9. #36

    Προεπιλογή

    Αν θυμάμαι καλά το ; Καθορίζει το τέλος της κάθε έκφρασης

  10. The Following 2 Users Say Thank You to m-power_01 For This Useful Post:

    alexk (06-10-12), BILL007 (06-10-12)

  11. #37
    Εγγραφή
    23-12-09
    Περιοχή
    salonica
    Μηνύματα
    13.324
    Thanked
    18605
    Rides
    1

    Προεπιλογή

    Σε κωδικα ρε τσομπανο, το ερωτηματικο και καποια αλλα συμβολα εκτελουν ενεργειες.
    Στον κωδικα που δουλευω εγω πχ, με ενα ερωτηματικο μπορω να ακυρωνω ολοκληρες γραμμες.
    sympether with chiefτης

    _________________________________________________

    /
    //Μ3 BORN ON THE RACETRACK TO LIVE IN THE STREETS

  12. #38
    Εγγραφή
    08-01-10
    Μηνύματα
    1.809
    Thanked
    4003
    Rides
    0

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα απο Thomelef Εμφάνιση μηνυμάτων
    Αλεξη...τα ερωτηματικα ενεργοποιουν την καθε γραμμη?
    Ακριβώς

  13. The Following User Says Thank You to alexk For This Useful Post:

    Thomelef (06-10-12)

  14. #39
    Εγγραφή
    20-03-11
    Ηλικία
    48
    Μηνύματα
    158
    Thanked
    88
    Rides
    0

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα απο alexk Εμφάνιση μηνυμάτων
    Μιλήσαμε για θερμοκρασίες κιβωτίου και διαφορικού, οπότε είναι ώρα να σηκώσω ένα θέμα.

    Πριν 3 χρόνια, αποφάσισα να φτιάξω δική μου τηλεμετρία, η οποία μάλιστα να έχει κάτι διαφορετικό.
    Έφτασα στο σημείο που ήθελα αλλά μετά εγκατέλειψα το project επειδή δεν είχα αρκετό χρόνο.
    Η μεγάλη διαφορά ήταν ότι έτρεχε σε linux board και είχε πράγματα όπως... webserver και wifi.
    Μπορούσες να συνδεθείς με το κινητό σου και να δεις/αλλάξεις πράγματα.

    Σκέφτομαι λοιπόν να ξεκινήσω νέο project, ήδη παρήγγειλα ένα νέο linux board 'έκπληξη'.
    Έχω κάτι καλές ιδέες, μία εκ'των οποίων δεν έχει γίνει ποτέ (και πιθανότατα θα μπορούσα να πουλήσω την πατέντα αυτή...).


    Πρωτού γράψω τι έχω σκεφτεί να υλοποιήσω, θα ήθελα να ακούσω ιδέες από τι θα θέλατε εσείς να log-άρετε όταν πάτε το αυτοκίνητό σας στην πίστα.
    Αν σε ενδιαφερει η κατασκευή ενός pcb με microcontroller πιο σταθερο απο pc μπορω να σε βοηθήσω και με κώδικες και με την κατασκευή ...!!στειλε μου πμ.
    Τελευταία επεξεργασία από το χρήστη davids : 06-10-12 στις 22:01

  15. The Following User Says Thank You to davids For This Useful Post:

    alexk (06-10-12)

  16. #40
    Εγγραφή
    08-01-10
    Μηνύματα
    1.809
    Thanked
    4003
    Rides
    0

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα απο davids Εμφάνιση μηνυμάτων
    Αν σε ενδιαφερει η κατασκευή ενός pcb με microcontroller πιο σταθερο απο pc μπορω να σε βοηθήσω και με κώδικες και με την κατασκευή ...!!στειλε μου πμ.
    Ευχαριστώ για την προσφορά σου.
    Πιστεύω ότι το Linux είναι πολύ πιο χρήσιμο/ευέλικτο από microcontrollers.

  17. The Following User Says Thank You to alexk For This Useful Post:

    BILL007 (18-10-12)

Σελίδα 4 από 5 ΠρώτηΠρώτη ... 2345 ΤελευταίαΤελευταία

Ετικέτες Θέματος

Δικαιώματα - Επιλογές

  • Δεν μπορείτε να δημοσιεύετε νέα θέματα
  • Δεν μπορείτε να απαντάτε σε θέματα
  • Δεν μπορείτε να δημοσιεύετε συνημμένα
  • Δεν μπορείτε να επεξεργάζεστε τις δημοσιεύσεις σας
  •  
BACK TO TOP