Создание секторов для телекоммуникационных вышек?

15

Я работаю в индустрии мобильных сетей и решил создать плагин для QGIS, c++/pythonкоторый выполняет следующие функции:

  • Шаг 1: Создайте точки, соответствующие каждой мобильной башне, основываясь на широте / длине каждой башни (эту часть я выполнил)

  • Шаг 2: Далее: сектор: каждая из этих башен будет иметь антенны, ориентированные по разным азимутам. поэтому мне нужно создать символ для каждого направления антенны (в конце будет выглядеть как лепесток цветка в цветке или треугольники, направленные внутрь)

  • Шаг 3: Когда я щелкаю по любому сектору, все соседние сектора, обращенные к сектору, должны быть как-то выделены (чтобы я мог найти соседей)

Мне нужно начать с большого файла Excel, содержащего название сектора, широту, долготу, ориентацию антенны и т. Д.

У кого-нибудь есть мнение?

введите описание изображения здесь

Бавин
источник

Ответы:

23

План и оптимизация сайта сотовой связи с использованием QGIS

Создание точек или мест на сайте:

  1. Создайте базу данных в формате CSV (убедитесь, что размеры антенн отсортированы в порядке убывания: с наивысшего с первого на наименьший последний, чтобы можно было избежать маскирования путем наложения ячеек)

Пример базы данных сайта телекоммуникаций 2. Импортируйте в QGIS, используя «Добавить текстовый слой с разделителями» Импорт базы данных сайта Telecom в QGIS через Добавить текстовый слой с разделителями в формате CSV

  1. Выберите поля X и Y и выберите Datum

Создание секторов сайта: пожалуйста, используйте плагин "Shape Tools" для создания секторов сайта Плагин QGIS Установка Shape Tools для плана сектора сайта Telecom

Сделать сектор из «азимута»: в этом сценарии для формирования сектора требуются 2 дополнительных столбца, которые могут быть получены из фактического «азимута» сектора.

По сути, смещение - / + 20 градусов к фактической ориентации сделало бы сектор BW 40 градусов от узла, или, как может потребоваться, исходя из требований пользователя.

  1. Поле начального угла: 1-й производный столбец с - 20 град. угол: выберите соответствующий столбец здесь

  2. Поле конечного угла: 2-й производный столбец с +20 град. угол: выберите соответствующий столбец здесь

  3. Поле радиуса: размер антенны или размер сектора следует выводить в отдельном столбце, как обычно, и вводить радиус следует в разделе «Инструменты формы» Создание сетки точек выборки с помощью плагина mmQGIS в QGIS Создание сектора ячеек на QGIS с использованием инструментов Shape Сотовый сайт рендеринга на QGIS

    1. Свойства слоя -> Стиль -> Порядок отображения элементов управления -> Выражение -> Размер антенны -> выберите опцию «По убыванию» (Asc / Description), чтобы размер порядка рендеринга секторного сектора был большим внизу, а размер - маленьким сверху для видимость впереди, создавая холст карты в случае, если данные CSV или данные таблицы не организованы ранее

https://twitter.com/vamsi_uppala/status/984504617215049728

Матрица расстояний: Используя этот встроенный алгоритм, можно определить расстояние между исходным сайтом и его ближайшим соседом, чтобы получить размер сектора сайта на основе плотности / частоты участка в данной географии, так что можно избежать перекрытия секторов, сохраняя при этом соответствующую видимость при любом увеличении. уровни (как таковые 1/3 расстояния, рассчитанного с использованием алгоритма, использовалось в приведенном ниже примере. В случае сети с несколькими технологиями / слоями можно использовать величины или размеры с точки зрения технологии / уровня для создания темы визуализации).

Этот процесс облегчит лучшую сеть представления со всеми приближениями при работе с KPI или анализом Neighbor.

Матрица расстояний в QGIS

Примечание: уникальный список сайтов должен быть обработан, поскольку инструмент будет генерировать нулевые расстояния, если обрабатываются ячейки с одного и того же сайта для извлечения расстояния до ближайшего соседа

Для более быстрой обработки плагин NNJoin можно использовать в качестве замены ближайшего соседа (может потребоваться обсуждение расстояния в единицах карты (градусы) до метров или км (метрика)).

Матрица расстояний для улучшения визуализации беспроводной сети Алгоритм дистанционной матрицы для улучшения визуализации беспроводной сети

Создать соседей:

Создать формат WKT, содержащий начальную и конечную точки разметки соседей

Начальная точка - это координаты исходного сайта (Lat1 Long2), а конечная точка - координаты целевого сайта (Lat2 Long2).

Создайте новый столбец с формированием LineString (Long1 Lat1, Long2 Lat2), или его можно будет впоследствии получить с помощью Калькулятора поля через Свойства слоя.

База данных QGIS для формата LineString для отношений хэндовера или соседей Использование центроидов секторов было бы лучше для надлежащего рендеринга и легкой идентификации, учитывая мульти-техно сайты.

Отношения между соседями могут быть исправлены с помощью сетевой статистики, такой как «Счет передачи обслуживания / Поздний HO / Ранний отказ HO / HO и т. Д.» вывести тему для толщины линии или цвета для легкой идентификации. Этот акциз может быть использован "Graduated" в меню "Style". Этот процесс создания nbrs со статистикой HO является почти мгновенным для размера, который был опробован с отношениями HO более 800 000 и количеством клеток ~ 40 000.Импортировать формат LineSting WKT в QGIS для отношений Cell HO Выпускной стиль может быть применен для применения толщины линии для определения ранга счетчика HO Нарисуйте все отношения передачи и классифицируйте по секторам для легкой идентификации Применить рулебаза

Алгоритм создания соседей из матрицы расстояний:

Сосед, полученный с помощью алгоритма матрицы расстояний, и представление на карте исходного сайта, однако это представление ближайшего соседа, предполагающее присутствие omini, которое можно использовать в случае добавления соседа на уровне сайта, такого как LNADJW и LNADJG, где SON будет определять отношения из этого определенного профиля. (сосед из интересующей точки двух направленных точек еще должен быть оценен для соответствия беспроводному сценарию): Ближайший сосед из матрицы расстояний

Приведенная ниже формула может использоваться в генераторе геометрии для представления отношений на лету (Свойства слоя-> Отдельный символ-> Маркер-> Простой маркер-> Тип слоя символа-> Генератор геометрии-> Тип геометрии-> LineString / MultiLineString): make_line (центроид (геометрия (get_feature ( 'NetworkSiteDatabase', 'Сайт', "InputID"))), центроид (геометрия (get_feature ( 'NetworkSiteDatabase', 'Сайт', "InputID"))))

Создание границ TAC, LAC легко в QGIS (100,00 сайтов находят это выполненным за 1 мин): введите описание изображения здесь 1. Сделайте «полигоны Вороного» из точек

  1. Используйте алгоритм «Растворить границы» в разделе «Process Toolbox» Grass, чтобы объединить отдельные границы ячеек с общими границами TAC, LAC, BSC или кластера и т. Д.

введите описание изображения здесь

Ниже приведен пример рабочего процесса с расстоянием по сетке 10 км х 10 км для размещения участков ячейки для индийской географии, в результате чего получено 36 032 участка с 108 096 ячейками. И каждый район обозначен уникальной границей TAC для простоты понимания, а затем вывод выглядит следующим образом:

Это грубое представление о планировании и в основном подходит для повседневного расширения пропускной способности и покрытия операторами сетей, если только у них нет очень строгих методов подхода, где соблюдаются ограничения для определения размеров. Модели распространения радиоволн, Terrain, Clutter, Capacity и обещания обслуживания (пропускная способность границы соты, средняя пропускная способность, покрытие и тип услуг и т. Д.)

QGIS для разработки планирования сотовой связи на увеличенном уровне QGIS для представления границ TAC

Чередование KPI с секторами: CSV или Excel можно использовать с дополнительными KPI для ячеек, сайтов и отношений.

или используйте кнопку «Присоединиться» во всплывающем окне «Свойства слоя» в качестве функции VLOOKUP для перетаскивания данных из обычных отчетов KPI и представления на карте в качестве тематики с использованием общего поля ex. Имя соты / сегмента в случае KPI на уровне соты или отношение, в случае передачи обслуживания и т. Д.

Опция таблицы соединений QGIS по общему полю

И распределите тематику соответственно: используйте «Rulebased» с «Graduated» в случае создания нескольких условий за один раз.

Используйте плагин «TimeManager» для проверки графиков KPI, чтобы определить его динамику, ежечасно выполняя ежедневный интервал времени через выбранный холст.

Полезные плагины:

«Таблица»

  1. Импорт прямого листа Excel в QGIS
  2. Классификация данных столбца (целое, десятичное, строковое и т. Д.)
  3. Данные файла могут быть нанесены при импорте с соответствующими геоданными (широта для точек; WKT для линий HO или полигонов, если таковые имеются) при выборе точки отсчета
  4. С помощью этого процесса отчеты по KPI можно легко перенести на карту

Электронная таблица помогает напрямую открывать файлы Excel с помощью .xlsx и отображать их в QGIS

«TableManager» Для редактирования заголовков столбцов на ходу Диспетчер таблиц в QGIS, используемый для редактирования заголовков столбцов на ходу для расширений .shp .csv .xlsx

«OpenLayer» и «QuickMapservices»: для наложений карт, напр. Google Map, Bing Map, OSM, данные по высоте астры и т. Д.

График опережения по времени: используйте опцию «Диаграммы» во всплывающем окне «Свойства слоя» и создайте «круговую» или «столбчатую» диаграмму, чтобы визуализировать достижимость сигнала сайта по образцам TA / PRACH.

Распределение TA или PRACH простое отображение

Применение схематической тематики для TA и представление всех образцов в методе ученика: TA или PRACH тематический

Тематика TA или PRACH о применении метода переменной величины или масштабного размера путем агрегирования отсчетов превышения TA> 6,9 км: Сроки вперед по размерам бин

Агрегация TA через полевой калькулятор (в этом случае данные умножались на 1 для преобразования в целое число и производили суммирование): Накопление времени

Пример тестового участка диска показан ниже: LTE Drive тестовая карта RSRP

QConsolidate: для совместного использования полных файлов проекта с командой и т. Д. При сохранении всех свойств проекта.

Другие советы:

  1. Возьмите отношения HO из соседнего сектора сайта 4G (поскольку это SON) и скопируйте тот же набор совместно расположенных секторов сайта (на 2G <-> 2G или 3G <-> 2G или или 3G <-> 2G или 23G -> 4G, это может быть увеличено до уровня OSS ежемесячно или раз в два месяца, и ограничено максимальным количеством HO и максимально допустимым числом отношений.

  2. Подобное выше может быть использовано для соседей 3G <-3G> на 3G <-> 2G, где сайт пропускает близость 4G.

  3. Сохранение стиля слоя в базе данных Spatlite: введите описание изображения здесь

  4. Тематический график испытаний диска можно легко обрабатывать, а процесс можно масштабировать до типичного кластера с размерами файлов более 200 МБ или более. Сопоставление маршрута до и после проезда может быть выполнено с гораздо большей легкостью путем буферизации либо участка с ошибкой GPS, либо расстояний между бинами (в зависимости от того, какое высокое значение само по себе ~ 20 м), так что график до или после может быть вырезан и сравнение бинов может быть выполнено соответственно и, следовательно, сравнительный анализ. QGIS имеет стилизацию слоя «на ходу» во время процессов (Копировать / Прошлое) тематических свойств, которые сохраняются в другом активном слое или сохраняются на локальном м / к (пользовательский доступ и редактирование с помощью текстового редактора, такого как NotePad ++, Submlime и т. Д.), и темы также делятся между командой и т. д.

Участок пробного проезда РСРП Индийский железнодорожный коридор

Пример RSRP через простые вычисления Pathloss для всенаправленной диаграммы направленности (карта Bin / Point с интервалом 100 м была построена вдоль вектора линии индийских железных дорог), отдельное расстояние (многокольцевой буфер) может использоваться для представления графика прогнозирования покрытия (Ограничения опущено: наклоны антенны, возвышения, отражения, поглощение и многие другие): Пример RSRP через простые расчеты Pathloss

Представление проезжей части из обычных контуров покрытия:

  1. Нарисуйте «многокольцевый буфер» на регулярном расстоянии от выбранного местоположения участка (широта), чтобы сделать кольца с переменным расстоянием вокруг данной точки, растворение буферов расстояния облегчило бы представление
  2. Генерировать точки вдоль линейных векторов
  3. Обрезать вектор точек на кольцевом буфере с несколькими расстояниями, чтобы выбрать соответствующие расстояния до площадки
  4. Используйте соответствующую формулу модели RF для расчета потерь в свободном пространстве и представления бина
  5. Использовать подход видимости, чтобы включить прогнозирование высоты над уровнем моря (* В настоящее время исследуется)
  6. Используйте Antenna Tilts, Антенна (* В настоящее время исследуется)
  7. Использовать модель поглощения Clutter (* В настоящее время исследуется)

Представление проездного участка с прогнозируемым покрытием

Примените COST 231 (модель распространения радиочастотного сигнала в городских условиях) в соответствии с расстоянием, рассчитанным с помощью MultiRingBuffer от центра тяжести сайта. Однако этот процесс может быть дополнительно уточнен для построения диаграммы направленности направленной антенны в связи с интерполяцией элементов разрешения для желаемой пикселизации. О применении модели распространения COST 231 RF на случайном участке участка

Полевой калькулятор может быть использован для проверки тематики покрытия карты маршрута (проведенные точки вдоль линии), чтобы выполнять итерационные проверки на разных частотах и ​​других константах. Выражение с преобразованием расстояния до Pathloss (COST 231)

Стоимость 231 Модель городских РЧ: Калькулятор формулы в полевых условиях: мощность передачи - (46,3 + 33,9 * LOG10 (частота в полосе МГц) -13,82 * LOG10 (20) - (3,2 * LOG10 (11,75 * 1) ^ 2-4,97) + (44,9-6,55 * LOG10 (антенна BTS TX Ht.)) * LOG10 («расстояние в км») + 3) Стоимость 231 Urban RF модель 1900 МГц

Модель Hata Urban RF: формула, используемая в полевом калькуляторе TX Power - (69,55 + 26,16 * log10 (1900) -13,89 * log10 (антенна BTS TX Ht.) - (0,8+ (1,1 * log10 (1900) -0,7) * 1,5- 1,56 * log10 (частота в МГц)) + (44,9–6,55 * log10 (антенна BTS TX Ht.)) * Log10 («расстояние в км»)): Модель Hata Urban RF 1900 МГц

Модель Hata Rural RF: используемая формула: мощность передачи - ((69,55 + 26,16 * log10 (частота в полосе МГц) -13,89 * log10 (частота BTS TX антенны) - - 0,8+ (1,1 * log10 (частота в полосе МГц) ) -0,7) * 1,5-1,56 * log10 (диапазон частот в МГц)) + (44,9–6,55 * log10 (антенна BTS TX Ht.)) Log10 («расстояние в км»)) - 4,78 (log10 (диапазон частот) в МГц)) ^ 2 + 18,33 * log10 (частота в полосе МГц) -40,94)

Hata Rural RF модель 1900 МГц

Обслуживание обслуживающей ячейки с использованием hublines (только идеальное условие FSL): введите описание изображения здесь

https://github.com/NationalSecurityAgency/qgis-shapetools-plugin/issues/9

Вамси Кришна Уппала
источник
2
Подробный ответ хорошо сделан, хотя покрытие ячейки зависит от других факторов: местности, разрешений, доступности и даже наружных температур и т. Д.
Mapperz
5
Вау, впечатляет, это один из самых ясных и подробных ответов, которые я видел.
Билл Чаппелл
1

Шаг 2 Недостаточно знаком с QGIS, но то, что я сделал с секторами в arcgis (для вышек сотовой связи и сирен торнадо), создает полигоны, отражающие их покрытие. Определите радиус, который вы хотите отразить, определенную мощность и угол, который вы хотите представить развертки. Нарисуйте линию от центра под углом азимута - (развертка / 2) для длины = радиуса. Затем нарисуйте касательную кривую из этой точки с нужным вам углом развертки и азимутом, затем вернитесь к своей центральной точке. И это дает вам сектор многоугольника.

Шаг 3 Здесь немного сложнее. Предполагая, что у вас есть радиус для определения «поблизости», вы буферизуете выделение вокруг своей точки башни, используя этот радиус (если вы хотите, чтобы сектора, которые взаимно обращены друг к другу, вместо буфера, использовали многоугольник секторов к радиусу выделения, построенному как в шаг 2). Итерация по выбранным башням. Для каждой башни используйте арктангенс для привязки к ней. например

bearing = arctan((y1-y0)/(x1-x0)

Где x0, y0 - местоположение вашей исходной башни, а x1, y1 - местоположение выбранной башни. Получив направление, сравните его с азимутом секторов в другой башне. Сначала переверните подшипник в противоположном направлении. Например, если угол меньше 180, добавьте 180. Если он больше 180, вычтите 180. Тогда, если опрокинутый подшипник находится между значениями развертки для сектора в выбранной башне, вы получите совпадение.

Например, если у вас азимут 225 (к юго-западу), то перевернутый азимут 45 (к северо-западу). Предположим, что у вас есть сектора, обращенные к 60, 180 и 300 с размахом 120 градусов. Первый сектор охватывает от 0 до 120, второй - от 120 до 240, а третий - от 240 до 0. Только первый сектор имеет перевернутую опору 45 внутри, так что это сектор, который обращен к вашему сектору.

blord-Castillo
источник
После того, как вы выполнили шаг 2, не будет ли достаточно на шаге 3 просто (1) найти все башни в пределах желаемого расстояния выбранного сектора и (2) среди этих башен сохранить те, чьи секторные полигоны пересекают выбранный секторный полигон?
whuber
Он хотел, чтобы секторы были выбраны. И его определение «поблизости» может быть больше или меньше радиуса сектора
blord-castillo
1
Позвольте мне уточнить, тогда. При настройке создайте секторные полигоны, простирающиеся до наибольшего ожидаемого радиуса поиска. На шаге (1) вы не обязательно используете радиус полигональных представлений секторов: вы используете любое желаемое расстояние запроса. На шаге (2) пересечение секторов гарантирует, что они сталкиваются.
whuber
@whuber: Я добавлю немного ясности: я приложу образец изображения того, что мне нужно! (Опубликовано выше) Красные линии не имеют отношения к моему нынешнему проекту, хотя они появятся на более позднем этапе. Возьмем, к примеру, этот «цветок» со всеми линиями, проведенными к нему. Промышленное кодовое слово для каждого лепестка является сектором. Оно представляет собой башню, установленную с 3 антеннами (секторами) при 0, 120, 260 градусах. Мое первое препятствие состоит в том, как я могу нарисовать эти многоугольники этой формы из Excel / CSV, содержащего название сектора, азимут сектора, широту сектора и долготу сектора.
Бавин
1
Также мне нужно будет повторить процесс рисования примерно до 20000 секторов на каждого поставщика мобильных услуг. Мне нужно понять способ рисования полигонов PyQGIS и доступа к таблице атрибутов, чтобы понять азимут и ориентировать полигон в соответствии с тем, что "blord-castillo" делал в своей программе arcGis
Бавин