Komputery ze współczesnym światem

Cid komórkowy. Jak znaleźć współrzędne stacji bazowej GSM przez MCC, MNC, LAC i CellID (CID)

Istnieje wiele metod pozycjonowania, takich jak nawigacja satelitarna (GPS), pozycjonowanie bezprzewodowe, Sieci Wi-Fi i przez sieci komórkowe.

W tym poście staraliśmy się sprawdzić, jak dobrze działa technologia określania lokalizacji przez wieże komórkowe w mieście Mińsk (pod warunkiem, że używane są tylko otwarte bazy danych współrzędnych nadajników GSM).

Zasada działania jest taka telefon komórkowy(lub moduł komunikacji komórkowej) wie, z jakiego nadajnika-odbiornika stacji bazowej jest obsługiwany, a mając bazę danych współrzędnych nadajników stacji bazowych, można w przybliżeniu określić swoją lokalizację.

Teraz trochę o tym, czym jest nadajnik pod względem OpenCellID i jak zapełniana jest baza danych OpenCellID. Ta baza danych jest wypełniona różne sposoby Najprościej jest zainstalować na smartfonie aplikację, która rejestruje współrzędne telefonu i obsługującej go stacji bazowej, a następnie przesyła wszystkie pomiary do serwera. Serwer OpenCellID oblicza przybliżoną lokalizację stacji bazowej na podstawie dużej liczby pomiarów (patrz rysunek poniżej). Więc współrzędne Sieć bezprzewodowa obliczane automatycznie i są bardzo przybliżone.


Mapa Członkowie OpenStreetMap

Przejdźmy teraz do pytania, jak korzystać z tej bazy danych. Istnieją dwie opcje: użyj identyfikatora komórki do koordynowania usługi tłumaczenia zapewnianej przez witrynę OpenCellID.org lub przeprowadź wyszukiwanie lokalne. W naszym przypadku preferowana jest metoda lokalna, ponieważ będziemy jechać 13 km trasą, a przeglądanie stron internetowych będzie powolne i nieefektywne. W związku z tym musimy pobrać bazę danych na laptopa. Można to zrobić, pobierając plik cell_towers.csv.gz z downloads.opencellid.org .

Baza danych to tabela w formacie CSV opisanym poniżej:

  • - kod kraju;
  • - kod operatora;
  • - numer kierunkowy;
  • - identyfikator nadajnika;
  • - długość geograficzna nadajnika;
  • - szerokość geograficzna nadajnika.
Z bazą danych wszystko jasne, teraz możesz przejść do określania identyfikatora komórki.

Wszystkie moduły komórkowe obsługują następujące komendy: AT+CREG, AT+COPS (obsługa stacji bazowej), AT+CSQ (siła sygnału ze stacji bazowej). Niektóre moduły pozwalają dowiedzieć się, oprócz obsługującego nadajnika, również sąsiednich, tj. monitor stacje bazowe używając poleceń AT^SMONC dla Siemens i AT+CCINFO dla Simcom. Do dyspozycji miałem moduł SIMCom SIM5215E.

W związku z tym użyliśmy polecenia AT + CCINFO, jego format podano poniżej.

Interesują nas następujące parametry:

  • - wskaźnik obsługującego nadajnika;
  • - wskaźnik sąsiedniego nadajnika;
  • - kod kraju;
  • - kod operatora;
  • - numer kierunkowy;
  • - identyfikator nadajnika;
  • jest mocą odbieranego sygnału w dBm.
Po podłączeniu modułu komórkowego do laptopa otrzymaliśmy następujący log:

Monitoring działa - możesz iść.

Trasa przebiegała w zachodniej części Mińska wzdłuż ul. Matusewicza, ul. Puszkina, ul. Ponomarenko, ul. Szarangowicz, ul. Maksym Gorecki, ul. Łobanka, ul. Kuncewszczyna, ul. Matusiewicz.


Mapa Członkowie OpenStreetMap

Rejestracja odbywała się w odstępie 1 sekundy. Po przeliczeniu CellID na współrzędne okazało się, że 6498 wywołań do bazy OpenCellID zakończyło się sukcesem, a 3351 wywołań nie znalazło dopasowań w bazie. Te. wskaźnik trafień dla Mińska wynosi około 66%.

Na poniższym rysunku przedstawiono wszystkie nadajniki, które zostały odnalezione w logu i znajdowały się w bazie danych.


Mapa Członkowie OpenStreetMap

Poniższy rysunek pokazuje wszystko porcja nadajniki, które zostały napotkane w logu i były w bazie danych. Te. podobny wynik można uzyskać na dowolnym module komórkowym lub telefonie.


Mapa Członkowie OpenStreetMap

Jak widać w jednym z momentów obsługiwał nas nadajnik znajdujący się za skrzyżowaniem ruchu na skrzyżowaniu ul. Obwodnica Prytyckiego i Moskwy. Najprawdopodobniej jest to podmiejska stacja bazowa obsługująca abonentów w odległości kilku kilometrów, do której prowadzi istotne błędy w określaniu lokalizacji według identyfikatora komórki.

Ponieważ nasz SIMCom SIM5215E w każdej chwili pokazuje nie tylko obsługujący nadajnik, ale także sąsiednie i poziomy sygnału z nich, postaramy się obliczyć współrzędne urządzenia na podstawie wszystkich danych dostępnych w danym momencie.

Obliczenie współrzędnych abonenta nastąpi jako średnia ważona współrzędnych nadajników:
Szerokość geograficzna = Suma (w[n] * Szerokość geograficzna[n]) / Suma(w[n])
Długość geograficzna = Suma (w[n] * Długość geograficzna[n]) / Suma(w[n])

Jak wiadomo z teorii propagacji fal radiowych, tłumienie sygnału radiowego w próżni jest proporcjonalne do kwadratu odległości od nadajnika do odbiornika. Te. w odległości 10 razy (na przykład od 1 km do 10 km) sygnał stanie się 100 razy słabszy, tj. zmniejszy moc o 20 dB. W związku z tym waga dla każdego terminu jest zdefiniowana jako:
w[n] = 10^(RSSI_in_dBm[n] / 20)

Tutaj założyliśmy, że moc wszystkich nadajników jest taka sama, założenie to jest błędne. Ale ze względu na brak informacji o mocy nadajnika stacji bazowej, trzeba celowo poczynić przybliżone założenia.

Rezultatem jest bardziej szczegółowy obraz lokalizacji.


Mapa Członkowie OpenStreetMap

W rezultacie trasa okazała się dobrze wytyczona, z wyjątkiem zwolnienia w kierunku węzła na obwodnicy Moskwy, z opisanego wcześniej powodu. Ponadto z czasem baza współrzędnych będzie się zapełniać, co również powinno zwiększyć dokładność i dostępność technologii lokalizacji Cell ID.

Dziękuję za uwagę. Pytania i komentarze są mile widziane.

Istnieje wiele sposobów określania swojej lokalizacji, takich jak nawigacja satelitarna (GPS), lokalizacja za pomocą sieci bezprzewodowych WiFi i sieci komórkowych.

W tym poście staraliśmy się sprawdzić, jak dobrze działa technologia określania lokalizacji przez wieże komórkowe w mieście Mińsk (pod warunkiem, że używane są tylko otwarte bazy danych współrzędnych nadajników GSM).

Zasada działania polega na tym, że telefon komórkowy (lub moduł komunikacji komórkowej) wie, z której stacji bazowej jest obsługiwany, a mając bazę danych współrzędnych nadajników stacji bazowych, można w przybliżeniu określić swoją lokalizację.

Teraz trochę o tym, czym jest nadajnik pod względem OpenCellID i jak zapełniana jest baza danych OpenCellID. Bazę tę wypełnia się na różne sposoby, najprostszym jest zainstalowanie na smartfonie aplikacji, która rejestruje współrzędne telefonu i obsługującej go stacji bazowej, a następnie przesyła wszystkie pomiary na serwer. Serwer OpenCellID oblicza przybliżoną lokalizację stacji bazowej na podstawie dużej liczby pomiarów (patrz rysunek poniżej). W ten sposób współrzędne sieci bezprzewodowej są obliczane automatycznie i są bardzo przybliżone.


Mapa Członkowie OpenStreetMap

Przejdźmy teraz do pytania, jak korzystać z tej bazy danych. Istnieją dwie opcje: użyj identyfikatora komórki do koordynowania usługi tłumaczenia zapewnianej przez witrynę OpenCellID.org lub przeprowadź wyszukiwanie lokalne. W naszym przypadku preferowana jest metoda lokalna, ponieważ będziemy jechać 13 km trasą, a przeglądanie stron internetowych będzie powolne i nieefektywne. W związku z tym musimy pobrać bazę danych na laptopa. Można to zrobić, pobierając plik cell_towers.csv.gz z downloads.opencellid.org .

Baza danych to tabela w formacie CSV opisanym poniżej:

  • - kod kraju;
  • - kod operatora;
  • - numer kierunkowy;
  • - identyfikator nadajnika;
  • - długość geograficzna nadajnika;
  • - szerokość geograficzna nadajnika.
Z bazą danych wszystko jasne, teraz możesz przejść do określania identyfikatora komórki.

Wszystkie moduły komórkowe obsługują następujące komendy: AT+CREG, AT+COPS (obsługa stacji bazowej), AT+CSQ (siła sygnału ze stacji bazowej). Niektóre moduły pozwalają dowiedzieć się, oprócz obsługującego nadajnika, również sąsiednich, tj. Monitoruj stacje bazowe za pomocą AT^SMONC dla Siemens i AT+CCINFO dla Simcom. Do dyspozycji miałem moduł SIMCom SIM5215E.

W związku z tym użyliśmy polecenia AT + CCINFO, jego format podano poniżej.

Interesują nas następujące parametry:

  • - wskaźnik obsługującego nadajnika;
  • - wskaźnik sąsiedniego nadajnika;
  • - kod kraju;
  • - kod operatora;
  • - numer kierunkowy;
  • - identyfikator nadajnika;
  • jest mocą odbieranego sygnału w dBm.
Po podłączeniu modułu komórkowego do laptopa otrzymaliśmy następujący log:

Monitoring działa - możesz iść.

Trasa przebiegała w zachodniej części Mińska wzdłuż ul. Matusewicza, ul. Puszkina, ul. Ponomarenko, ul. Szarangowicz, ul. Maksym Gorecki, ul. Łobanka, ul. Kuncewszczyna, ul. Matusiewicz.


Mapa Członkowie OpenStreetMap

Rejestracja odbywała się w odstępie 1 sekundy. Po przeliczeniu CellID na współrzędne okazało się, że 6498 wywołań do bazy OpenCellID zakończyło się sukcesem, a 3351 wywołań nie znalazło dopasowań w bazie. Te. wskaźnik trafień dla Mińska wynosi około 66%.

Na poniższym rysunku przedstawiono wszystkie nadajniki, które zostały odnalezione w logu i znajdowały się w bazie danych.


Mapa Członkowie OpenStreetMap

Poniższy rysunek pokazuje wszystko porcja nadajniki, które zostały napotkane w logu i były w bazie danych. Te. podobny wynik można uzyskać na dowolnym module komórkowym lub telefonie.


Mapa Członkowie OpenStreetMap

Jak widać w jednym z momentów obsługiwał nas nadajnik znajdujący się za skrzyżowaniem ruchu na skrzyżowaniu ul. Obwodnica Prytyckiego i Moskwy. Najprawdopodobniej jest to podmiejska stacja bazowa obsługująca abonentów w odległości kilku kilometrów, do której prowadzi istotne błędy w określaniu lokalizacji według identyfikatora komórki.

Ponieważ nasz SIMCom SIM5215E w każdej chwili pokazuje nie tylko obsługujący nadajnik, ale także sąsiednie i poziomy sygnału z nich, postaramy się obliczyć współrzędne urządzenia na podstawie wszystkich danych dostępnych w danym momencie.

Obliczenie współrzędnych abonenta nastąpi jako średnia ważona współrzędnych nadajników:
Szerokość geograficzna = Suma (w[n] * Szerokość geograficzna[n]) / Suma(w[n])
Długość geograficzna = Suma (w[n] * Długość geograficzna[n]) / Suma(w[n])

Jak wiadomo z teorii propagacji fal radiowych, tłumienie sygnału radiowego w próżni jest proporcjonalne do kwadratu odległości od nadajnika do odbiornika. Te. w odległości 10 razy (na przykład od 1 km do 10 km) sygnał stanie się 100 razy słabszy, tj. zmniejszy moc o 20 dB. W związku z tym waga dla każdego terminu jest zdefiniowana jako:
w[n] = 10^(RSSI_in_dBm[n] / 20)

Tutaj założyliśmy, że moc wszystkich nadajników jest taka sama, założenie to jest błędne. Ale ze względu na brak informacji o mocy nadajnika stacji bazowej, trzeba celowo poczynić przybliżone założenia.

Rezultatem jest bardziej szczegółowy obraz lokalizacji.


Mapa Członkowie OpenStreetMap

W rezultacie trasa okazała się dobrze wytyczona, z wyjątkiem zwolnienia w kierunku węzła na obwodnicy Moskwy, z opisanego wcześniej powodu. Ponadto z czasem baza współrzędnych będzie się zapełniać, co również powinno zwiększyć dokładność i dostępność technologii lokalizacji Cell ID.

Dziękuję za uwagę. Pytania i komentarze są mile widziane.

Wykrywanie wież komunikacyjnych nie jest działalnością przestępczą, ale dość powszechnym zadaniem w odległych regionach i wioskach, gdzie jakość zasięgu pozostawia wiele do życzenia. Jak zrozumieć, dlaczego lepiej bierze się z tego słupka niż z tamtej bramki? Poniższe narzędzia i strony internetowe mogą pomóc w nawigacji.

Spośród usług anglojęzycznych być może najlepsza jest opensignal.com, gdzie możesz wybrać operatora i żądaną lokalizację. Mapa nie pokazuje wież, ale pokazuje obszary zasięgu. Z Rosjan mogę polecić netmonitor.ru - jego baza danych zawiera wiele informacji o wieżach operatorskich.

Niektóre aplikacje na Androida są również interesujące. Na przykład OpenSignal wyświetla mapę wieże komórkowe I Hotspoty Wi-Fi(na mapie są też zaznaczone miejsca o słabej komunikacji), ma wbudowany kompas i miernik prędkości.

Innym ciekawym narzędziem jest Netmonitor. Może monitorować sieci GSM i CDMA, wyświetlać informacje o sile sygnału, zawierać bazę danych wież komórkowych, obsługiwać urządzenia z wieloma kartami SIM, a także logować się w formacie CLF lub KLM.

Należy pamiętać, że Netmonitor ma ograniczenia podczas pracy na urządzeniach niektórych producentów. Na smartfonach Motorola, LG, Samsung, Acer i Huawei lista sąsiadów może być pusta, a na urządzeniach Samsung siła sygnału może nie być wyświetlana.

Polecam również aplikację GSM Signal Monitoring, która umożliwia pracę z sieciami GSM, UMTS i LTE. Wyświetla zmianę poziomu sygnału na wykresie oraz pokazuje sąsiednie komórki (tylko w sieciach GSM). Dostępny jest monitor szybkości transmisji danych oraz możliwość monitorowania stanu połączenia, standardu połączenia, identyfikatorów komórki i aktualnej strefy (LAC/RNC/TAC) oraz siły odbieranego sygnału (RSSI, a także RSRP dla LTE).

Znając dane stacji bazowej, możesz przebić ją przez stronę xinit.ru i uzyskać informacje o jej lokalizacji. W dużych miastach nie zaszkodzi spróbować znaleźć popularne mapy z lokalizacją wież, ale należy zrozumieć, że wieże należą do różnych operatorów. Ponadto stacje bazowe umieszczane są nie tylko na słupach, ale także na dachach domów.

Podobne posty