首先,我正在尝试使用 C# (.NET 4) 处理这个灾难,因此如果你有一些能帮助我的代码,那将不胜感激。我有一个设备只能获取 GSM 基站信息(顺便说一句,通过
我看到有各种各样的服务提供基站代码分辨率(Google、Open Cell ID等),它们将 LAC、MCC 等作为参数并返回一个坐标。因此,我认为它们返回的应该是我传递进去的给定基站的坐标。因此在我的情况下,我可以发送所有我拥有的 LAC 等信息,并获得一系列经度和纬度。很棒,但我的设备并不在那里。现在我认为我需要做一些三角测量,这就是我的知识缺失所困扰的地方。
那么,我到目前为止正确吗?如果是,我该如何进行这个计算(是否有什么东西可以告诉我如何处理所有这些数字,或者更好的是,我可以引用和将所有这些东西馈送到其中以获得一些明智的东西的开源库)?
例如,这是我可能从前述 AT 命令中获得的东西:
AT+KCELL
命令),因此我有一个关于基站的值集合(每个基站都有LAC、MCC、MNC、Cell ID、信号强度和第一个定时提前量)。所以我认为我可以得到某种经度和纬度坐标(虽然不准确,但是也可以)。现在我需要帮助,因为我的小脑袋已经混乱了...我看到有各种各样的服务提供基站代码分辨率(Google、Open Cell ID等),它们将 LAC、MCC 等作为参数并返回一个坐标。因此,我认为它们返回的应该是我传递进去的给定基站的坐标。因此在我的情况下,我可以发送所有我拥有的 LAC 等信息,并获得一系列经度和纬度。很棒,但我的设备并不在那里。现在我认为我需要做一些三角测量,这就是我的知识缺失所困扰的地方。
那么,我到目前为止正确吗?如果是,我该如何进行这个计算(是否有什么东西可以告诉我如何处理所有这些数字,或者更好的是,我可以引用和将所有这些东西馈送到其中以获得一些明智的东西的开源库)?
例如,这是我可能从前述 AT 命令中获得的东西:
5,74,33,32f210,157e,8101,50,0,79,3,32f210,157e,80f7,37,64,5,32f210,157e,810b,37,55,32,32f210,157e,9d3,27,41,33,32f210,157e,edf8,15
分解并解析它,我将得到(我希望我解析正确 - 当然,我的解析程序可能存在错误,但看起来合理):
Number of cells: 5
单元格 1
LAC: 5502
MNC: 1
MCC: 232
Cell ID: 33025
Signal: 80
ARFCN: 74
BSIC: 33
Timing advance: 0
Longitude: 14.2565389
Latitude: 48.2248439
单元格 2
LAC: 5502
MNC: 1
MCC: 232
Cell ID: 33015
Signal: 55
ARFCN: 79
BSIC: 3
Longitude: 14.2637736
Latitude: 48.2331576
单元格3
LAC: 5502
MNC: 1
MCC: 232
Cell ID: 33035
Signal: 55
ARFCN: 64
BSIC: 5
Longitude: 14.2488966
Latitude: 48.232513
单元格 4
LAC: 5502
MNC: 1
MCC: 232
Cell ID: 2515
Signal: 39
ARFCN: 55
BSIC: 32
Longitude: 14.2488163
Latitude: 48.2277972
单元格5
LAC: 5502
MNC: 1
MCC: 232
Cell ID: 60920
Signal: 21
ARFCN: 41
BSIC: 33
Longitude: 14.2647612
Latitude: 48.2299558
有了所有这些信息,我应该如何以最准确的方式找到自己所在的位置?