gpsmath.h
Go to the documentation of this file.
00001 #ifndef GPS_MATH_H
00002 #define GPS_MATH_H
00003 
00004 #define GPS_A   6378137.0                                                               // earth semimajor axis in meters
00005 #define GPS_F   0.0033528106647474807198455286185206    // reciprocal flattening
00006 #define GPS_E2  2*GPS_F-GPS_F*GPS_F                                                                     // eccentricity squared
00007 #define MEAN_EARTH_RADIUS       6378137.0
00008 #define MEAN_EARTH_DIAMETER     12756274.0
00009 #define UMR     0.017453292519943295769236907684886             //PI/180
00010 
00011 
00012 struct GPS_DATA
00013 {       
00014 //latitude/longitude in deg * 10^7
00015         int latitude;
00016         int longitude;
00017 //GPS height in mm 
00018         int height;
00019 //speed in x (E/W) and y(N/S) in mm/s   
00020         int speed_x;
00021         int speed_y;
00022 //GPS heading in deg * 1000
00023         int heading; 
00024         
00025 //accuracy estimates in mm and mm/s
00026         unsigned int horizontal_accuracy;
00027         unsigned int vertical_accuracy;
00028         unsigned int speed_accuracy;
00029 
00030 //number of satellite vehicles used in NAV solution
00031         unsigned int numSV;
00032 
00033 // GPS status information; Bit7...Bit3: 0 Bit 2: longitude direction Bit1: latitude direction Bit 0: GPS lock
00034         int status;             
00035 };
00036 extern struct GPS_DATA GPS_Data;
00037 
00038 struct GPS_TIME 
00039 {
00040         unsigned int time_of_week;      //[ms]
00041         unsigned short week;            //[1..52]
00042 };
00043 extern struct GPS_TIME GPS_Time;
00044 
00045 //trigger's new gps data transmission
00046 extern unsigned int gpsDataOkTrigger;
00047 void xy2latlon(double lat0, double lon0, double X, double Y, double *lat, double *lon); //X: East, Y: North in m; lat0,lon0: Reference coordinates; lat,lon: current GPS measurement
00048 
00049 #endif // GPS_MATH_H


ccny_asctec_firmware_2
Author(s): Ivan Dryanovski, Roberto G. Valenti
autogenerated on Tue Jan 7 2014 11:04:17