Technik-Talk

der "ANTRAX Datentechnik GmbH"

Kein GPS? Dann eben „GSM Cell Locating“!

Moderne GNSS-Empfänger (= GPS + GLONASS + BeiDou + Galileo) sind heutzutage in der Lage, die aktuelle Position fast schon zentimetergenau zu ermitteln. Aber was tun, wenn kein GPS-Empfänger im System vorhanden ist?

Zumindest in Geräten mit Mobilfunkmodul gibt es eine gar nicht so schlechte „Ersatzlösung“:

Positionsermittlung per „GSM Cell Location“

Dabei sammelt das Mobilfunkmodul, verkürzt gesagt, Informationen über alle „sichtbaren“ Mobilfunk-Masten in der Gegend, überträgt diese Informationen an einen Anbieter wie z.B. Rx Networks Inc. in Kanada oder auch www.open-electronics.org und bekommt von diesem die „ungefähre“ Position zurückgeliefert. „Ungefähr“ heißt in diesem Fall: 0 … 1000 Meter Genauigkeit.

Man bekommt also nicht die Koordinaten der Straßenseite zurückgeliefert sondern ’nur‘ die des Stadtviertels … sicher nicht für alle Anwendungen die richtige Lösung, aber mit Sicherheit eine ausreichende Lösung für viele Anwendungen. Und als Fall-Back-Lösung auf jeden Fall „besser als nix“.

Am Beispiel eines Telit-Moduls wird hier erklärt, wie das ganze abläuft:

  • um ein „m2mLOCATE“ durchzuführen (so nennt Telit die GSM-Zell-Ortung), wird ein AT#AGPSSND zum Modul gesendet
  • daraufhin sendet das Mobilfunkmodul alle Informationen der sichtbaren Mobilfunkzellen, also auch der nicht benutzten Nachbarzellen, zum Telit-Server (via HTTP POST zu der Adresse „m2mlocate.telit.com“, Port 9978):
    .

    POST /xybridserver/RXNXybrid HTTP/1.1
    Connection: close
    Host: 213.182.103.223:9978
    Content-Type: application/x-www-form-urlen
    coded
    Content-Length: 380
    clientId=tuHacyuDr&mId=10&deviceId=351777046365258&version=3&requestMask=4194304
    &servCell=ctype:gsm;mcc:262;mnc:01;lac:14595;cid:17688;ta:0;rxlev:-75
    &neighCells=ctype:gsm;mcc:262;mnc:01;lac:14595;cid:56327;rxlev:-84,
    ctype:gsm;mcc:262;mnc:01;lac:14595;cid:2646;rxlev:-95,
    ctype:gsm;mcc:262;mnc:01;lac:14595;cid:17689;rxlev:-95,
    ctype:gsm;mcc:262;mnc:01;lac:14595;cid:27798;rxlev:-100
  • Der Telit-Server antwortet daraufhin in Windeseile (ca. 1-4 Sekunden) mit z.B.
    #AGPSRING: 200,52.1083693,8.6700514,0.0,2765.0,““,0
  • das Objekt der Begierde (= die aktuelle Standort-Koordinate) ist nun das hier —> „52.1083693,8.6700514
  • wer’s nicht glaubt kopiert sich die Koordinate „52.1083693,8.6700514“ aus dem String heraus und gibt sie bei „maps.google.de“ ein … wooallah! Das ist unser Standort mit einer Ungenauigkeit von ca. 250 Metern.

 

Wie man sieht werden hier die Zellendaten der Hauptzelle übertragen (cid = 17688) und zusätzlich noch die Zellendaten von 4 Nachbarzellen (cid = 56327, cid = 2646, cid = 17689 und cid = 27798). Aus dem CID, dem MCC, dem MNC, dem LAC und dem jeweiligen Empfangspegel (rxlev) wird per Triangulation der aktuelle Standort ermittelt.

Und nicht verwirren lassen: Der Telit-Server leitet alle Anfragen nur weiter zu „Rx Networks“ …

Andere Modulhersteller nennen ihre Verfahren anders

  • Telit —> m2mLOCATE
  • Quectel —> QuecLocator
  • SIMCom —>
  • Enfora —>
  • uBox —>

aber alle nutzen dasselbe Prinzip! Nicht alle Module der Hersteller unterstützen „GSM Cell Locating“ bzw. benötigen Firmwareversionen.

 

So einfach funktioniert „GSM Cell Location“