安装GIS OFFICE软件,包括USB驱动(GPS开机,用专用的数据线连接电脑 把采集器开机,连接好数据线后插入电脑的USB接口。
打开GIS OFFICE软件,点击“文件”,选择“从手持机接收”。
在d出的“TransferTool”对话框的左上角空白处“USB/串口”中选择“USB”,单击第二行最左边那个图标“连接”。
用鼠标左键选择需要下载的数据,然后用鼠标右键点击一下这个文件,选择“复制”
此时就会d出一个“正在复制文件”的对话框,复制完成后这个对话框会自动关闭。导出就完成了
try
{
//参数赋值
double ss1 = 000000001, ss2 = 1000000,we=72921151467ss11000;
double pi = 31415926535;
string[] str = textBox2TextTrim()Split(' ');
double[,] a = new double[7, 4];
int k = 0;
for (int i = 0; i < 7; i++)
{
for (int j = 0; j < 4; j++)
{
a[i, j] = ConvertToDouble(str[k]);
k++;
}
}
//规划时刻计算
int[] dinmth = new int[12];
double year, month, day, hour, minute, second, dayofy, ttlday, dayofw, gpstime, tk;
int weekno;
dinmth[0] = 31; dinmth[1] = 28; dinmth[2] = 31;
dinmth[3] = 30; dinmth[4] = 31; dinmth[5] = 30;
dinmth[6] = 31; dinmth[7] = 31; dinmth[8] = 30;
dinmth[9] = 31; dinmth[10] = 30; dinmth[11] = 31;
year = ConvertToDouble(textBox21Text);
month = ConvertToDouble(textBox22Text);
day = ConvertToDouble(textBox23Text);
hour = ConvertToDouble(textBox24Text);
minute = ConvertToDouble(textBox25Text);
second = ConvertToDouble(textBox26Text);
if (month == 1)
{
dayofy = day;
}
else
{
dayofy = 0;
for (int i = 0; i < 12; i++)
{
dayofy += dinmth[i];
if (i == 1)
{
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
dayofy += 1;
}
}
dayofy += day;
}
ttlday = 360;
for (int yr = 1981; yr < year; yr++)
{
ttlday += 365;
if (yr % 4 == 0 && yr % 100 != 0 || yr % 400 == 0)
{
ttlday += 1;
}
}
ttlday += dayofy;
weekno = (int)(ttlday / 7);
dayofw = ttlday - 7 weekno;
gpstime = hour 3600 + minute 60 + second + dayofw 86400;
tk = gpstime - a[3, 0] ss2;
if (tk > 302400)
{
tk -= 604800;
}
else if(tk<-302400)
{
tk += 602400;
}
appvalue1 = tkToString("e2");
//平均角速度计算
double n0, n;
n0 = (MathSqrt(3986004418) / MathPow(a[2, 3], 3)) ss1;
n = n0 + a[1, 2] ss1;
appvalue2 = nToString("e2");
//平近点角计算
double M0, Mk;
M0 = a[1, 3];
Mk = M0 10 + n tk;
if (MathAbs(Mk) > 2 pi)
{
int w1 = (int)(Mk / (2 pi));
Mk = Mk - 2 pi w1;
}
appvalue3 = MkToString("e2");
//偏近点角计算
double Ek, E0;
Ek = Mk;
do
{
E0 = Ek;
Ek = Mk + a[2, 1] 01 MathSin(E0);
} while (MathAbs(Ek - E0) > 000000001);
appvalue4 = EkToString("e2");
//真近点角
double angle1, angle2, Vk;
angle1 = MathSqrt(1 - MathPow(a[2, 1] 01, 2)) MathSin(Ek);
angle2 = MathCos(Ek) - a[2, 1] 01;
Vk = MathAtan(MathAbs(angle1 / angle2));
if (angle1 >= 0 && angle2 <= 0)
{
Vk = pi - Vk;
}
else if (angle1 <= 0 && angle2 <=0)
{
Vk = pi + Vk;
}
else
{
Vk = 2 pi - Vk;
}
appvalue5 = VkToString("e");
//升交角距
double Qk;
Qk = Vk + a[4, 2] 10;
if (MathAbs(Qk) > 2 pi)
{
int w2 = (int)(Qk / (2 pi));
Qk = Qk - 2 pi w2;
}
appvalue6 = QkToString("e");
//升交角距改正,轨道向径改正,轨道倾角改正计算
double Fu, Fr, Fi;
Fu = a[2, 0] ss1 1000 MathCos(2 Qk) + a[2, 2] ss1 1000 MathSin(2 Qk);
Fr = a[4, 1] 1000 MathCos(2 Qk) + a[1, 1] 100 MathSin(2 Qk);
Fi = a[3, 1] ss1 100 MathCos(2 Qk) + a[3, 3] ss1 10 MathSin(2 Qk);
appvalue7 = FuToString("e");
appvalue8 = FrToString("e");
appvalue9 = FiToString("e");
//改正后升交角距、轨道向径、轨道倾角计算
double Uk, Rk, Ik;
Uk = Qk + Fu;
Rk = MathPow(a[2, 3] ss2 001, 2) (1 - a[2, 1] 01 MathCos(Ek)) + Fr;
Ik = a[4, 0] + Fi + a[5, 0] ss1 01 tk;
appvalue10 = UkToString("e");
appvalue11 = RkToString("e");
appvalue12 = IkToString("e");
//升交点轨道直角坐标系坐标计算
double Xk, Yk;
Xk = Rk MathCos(Uk);
Yk = Rk MathSin(Uk);
appvalue13 = XkToString("e");
appvalue14 = YkToString("e");
//升交点经度计算
double N;
int w3;
N = a[3, 2] 10 + (a[4, 3] ss1 - we) tk - we a[3, 0] ss2;
if (MathAbs(N) > 2 pi)
{
w3 =(int)(N / (2 pi));
N = N - 2 pi w3;
}
appvalue15 =NToString("e");
//地固坐标系下卫星空间直角坐标计算,Ik为ik
double X, Y, Z;
X = Xk MathCos(N) - Yk MathCos(Ik) MathSin(N);
Y = Xk MathSin(N) + Yk MathCos(Ik) MathCos(N);
Z = Yk MathSin(Ik);
appvalue16 = XToString("e");
appvalue17 = YToString("e");
appvalue18 = ZToString("e");
new Form2()ShowDialog();
}
catch
{
MessageBoxShow("请输入卫星时刻或又一次加载卫星参数导致出错");
return;
}
如果开发的应用程序和GPS模块返回的经纬度不一致,可能存在以下原因:
GPS信号不稳定或信号受阻:GPS信号的可靠性可能受到许多因素的影响,例如天气,建筑物,自然地形等。因此,如果你处于高楼大厦或深山丛林等信号不好的区域,GPS可能会产生误差。
时间同步问题:开发的应用程序可能会使用设备的本地时间来获取位置信息。但是,如果设备的时间不准确或与GPS卫星不同步,则可能会导致位置偏差。
坐标系不同:在计算经纬度时,可能使用不同的坐标系。例如,有些应用程序使用WGS 84坐标系,而有些使用GCJ-02坐标系。如果坐标系不匹配,则会导致经纬度的不一致。
设备故障:最后,如果设备存在硬件故障,则可能会导致经纬度不准确。
针对以上原因,你可以尝试以下解决方案:
尽量在开阔的区域使用设备,以确保获得更好的GPS信号。
使用网络时间同步,以确保设备的时间与GPS卫星时间同步。
了解应用程序使用的坐标系,并确保在使用位置数据时使用正确的坐标系。
检查设备的硬件是否正常。如果硬件出现问题,请及时联系维修人员或更换设备。
以上就是关于GPS的航迹用什么程序做出釆全部的内容,包括:GPS的航迹用什么程序做出釆、急求GPS卫星坐标计算C#程序!!!、开发的app跟gps模块经纬度对不上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)