MAATRIX / Блог / Транспортная компания: GPS-мониторинг 40 фур своими силами вместо платы за машину

Транспортная компания: GPS-мониторинг 40 фур своими силами вместо платы за машину

MAATRIX

Каждая новая фура в парке — это не только лизинг, топливо и зарплата водителя, но и ещё одна строчка в счёте от сервиса мониторинга. Пока парк маленький, разница не видна. Когда машин становится сорок, плата за GPS-мониторинг превращается в отдельную статью расходов, которая растёт линейно и без остановки — и это на фоне того, что сами данные с трекера идут в общем-то по одному и тому же каналу связи, независимо от того, кто их принимает. Ниже — как устроен переход на приём телематики своими силами и что при этом реально меняется в экономике.

Почему счёт за мониторинг растёт быстрее, чем парк

Логика подписочных сервисов телематики простая и понятная: чем больше у вас машин, тем больше вы платите. На старте, с пятью-семью машинами, это удобно — не нужно разбираться в протоколах, поднимать инфраструктуру, думать про отказоустойчивость. Сервис берёт на себя приём данных, хранение истории треков, показ карты, геозоны, отчёты по пробегу.

Проблема начинается там, где парк вырастает до трёх-четырёх десятков машин и продолжает расти. Плата за мониторинг умножается на число единиц техники, и в отличие от, скажем, топлива, эта статья расходов не зависит от того, сколько реально ездит техника в этом месяце — трекер стоит на машине и «капает» тариф даже если фура простаивает на ремонте или ждёт груза. При парке в 40 фур это уже заметная ежемесячная сумма, которая просто вычитается из маржи на каждом рейсе, и с ростом парка пропорция не меняется — экономии от масштаба в подписочной модели, как правило, нет: цена за единицу либо не снижается вовсе, либо снижается незначительно на объёме, который малому и среднему перевозчику ещё нужно выслужить.

При этом сама по себе задача — принять координаты, скорость и статус датчиков с трекера, сохранить историю и показать на карте — не такая уж сложная с инженерной точки зрения. Трекер сам отправляет данные по интернету (через SIM-карту с мобильным интернетом) на заданный IP-адрес и порт. Кто стоит на другом конце этого соединения — облачный сервис вендора или сервер, который арендуете и настраиваете вы сами, — трекеру всё равно. Это и есть точка, где можно вынести мониторинг из чужой подписки в свою инфраструктуру.

Как вообще устроен GPS-мониторинг автопарка

Чтобы понять, что именно вы забираете себе, стоит разложить систему на составные части:

  1. Трекер на машине — устройство, которое получает координаты со спутников (GPS/ГЛОНАСС), опционально снимает данные с датчиков (уровень топлива, температура в рефрижераторе, обороты двигателя через CAN-шину) и упаковывает всё это в пакеты данных.
  2. Канал связи — SIM-карта с мобильным интернетом внутри трекера. Трекер сам, по расписанию или при изменении показаний, отправляет пакет на заранее прописанный сервер: IP-адрес (или домен) и порт.
  3. Сервер приёма данных — программа, которая слушает этот порт, разбирает протокол конкретной модели трекера и кладёт данные в базу.
  4. Хранилище истории — база данных, где копится трек: координаты с привязкой ко времени, скорость, события (превышение скорости, выезд за геозону, слив топлива и т.д.).
  5. Интерфейс — карта, отчёты, уведомления, экспорт данных для бухгалтерии или диспетчера.

Облачный сервис телематики закрывает все пять пунктов и берёт деньги за это помашинно. При переходе «своими силами» первый пункт (сами трекеры) обычно остаётся как есть — их не нужно менять, если только они не жёстко привязаны к экосистеме конкретного вендора. Меняются пункты 3-5: вместо чужого сервера вы поднимаете свой, вместо чужой базы — свою, вместо чужого интерфейса — свой (или тот же класс open-source ПО, которое вы сами администрируете).

Отдельный вопрос — куда девать исторические данные, если вы уже накопили их у прежнего сервиса. У большинства сервисов есть экспорт треков (обычно CSV или похожий формат), но полной миграции истории «один в один» ожидать не стоит — это стоит проговорить с текущим провайдером заранее, до расторжения договора.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.

Арендовать сервер

Traccar и open-source: тот самый «своими силами»

Для приёма данных с трекеров существует зрелое open-source решение — Traccar. Это сервер, который умеет разбирать протоколы огромного числа моделей трекеров разных производителей (в проекте заявлена поддержка более сотни протоколов), хранит историю треков, поддерживает геозоны, уведомления и веб-интерфейс с картой. Именно это ПО чаще всего стоит «под капотом» у многих коммерческих сервисов мониторинга — то есть переход на собственный сервер с тем же классом софта не означает потерю функциональности, а часто означает работу с тем же движком, но без наценки посредника.

Ключевой момент для перехода — узнать, какой протокол используют ваши текущие трекеры. Это можно уточнить у поставщика оборудования: конкретная модель трекера обычно работает по одному определённому протоколу передачи данных, и в списке поддерживаемых Traccar протоколов почти наверняка найдётся нужный — рынок трекеров достаточно стандартизирован, и большинство моделей давно и открыто документируют формат своих пакетов.

Практическая последовательность перехода:

  1. Уточнить протокол и порт, на который сейчас настроены трекеры (это видно в настройках текущего сервиса или в документации на модель трекера).
  2. Поднять сервер и развернуть на нём Traccar (обычно через Docker-контейнер — это заметно упрощает установку и обновления).
  3. Открыть на сервере нужный порт для приёма данных по этому протоколу.
  4. На одном-двух трекерах поменять адрес сервера (это делается либо через настройки самого трекера по SMS-команде, либо через сервисное меню, либо физически, в зависимости от модели) и проверить, что данные пошли на новый сервер, при этом не отключая старый сервис.
  5. Убедиться пару дней, что трек стабилен, геозоны и уведомления работают так же, как ожидалось.
  6. Постепенно перевести остальные трекеры партиями, а не все разом — это снижает риск остаться без мониторинга парка, если что-то пойдёт не так с новым сервером.

Не стоит выключать старый сервис мгновенно на всех машинах одним днём. Параллельный запуск на 3-5 машинах в течение недели-двух — самый безопасный способ убедиться, что всё работает штатно, прежде чем переводить остальные 35-37.

Сервер для приёма данных: что реально нужно

GPS-телематика — задача с небольшим объёмом данных на единицу времени, но с требованием стабильной доступности 24/7: трекеры отправляют пакеты постоянно, и если сервер недоступен несколько часов, за это время накапливается пробел в истории (у части трекеров есть буферизация и досылка при восстановлении связи, у части — нет, данные просто теряются).

Для парка в 40 машин ресурсы сервера умеренные:

  • CPU и RAM. Разбор протокола и запись в базу — не ресурсоёмкая операция. Для парка в несколько десятков машин достаточно 2-4 ядер и 4-8 ГБ RAM с запасом на рост парка и веб-интерфейс с несколькими одновременными пользователями (диспетчеры).
  • Диск. История треков — это, по сути, постоянно растущая таблица в базе данных. Для 40 машин с точками раз в 30-60 секунд накапливается заметный, но не экстремальный объём — счёт идёт на гигабайты в месяц, а не на терабайты. Стоит сразу заложить SSD под базу (случайная запись большого числа мелких точек — это как раз тот паттерн нагрузки, где SSD ощутимо выигрывает у HDD) и продумать политику хранения: например, детальные точки за последние несколько месяцев плюс агрегированные суточные отчёты за более старые периоды, чтобы база не росла бесконечно.
  • Сеть и порты. Сервер должен быть доступен по статическому IP-адресу или домену на портах, которые слушает Traccar под ваши протоколы. Это значит: белый IP обязателен (трекеры не умеют работать через NAT в обратную сторону так, как это делают браузеры), и брандмауэр должен пропускать входящие TCP/UDP-соединения на нужные порты.
  • Резервное копирование. База с историей треков — это то, что жалко потерять при сбое диска. Регулярный бекап базы данных (штатными средствами PostgreSQL, если вы выбрали его как хранилище для Traccar) на отдельный диск или в другое место — обязательный пункт, а не опция «сделаем потом».
  • Мониторинг самого сервера. Отдельно от мониторинга машин стоит следить за состоянием самого сервера: место на диске, доступность портов, нагрузка. Иначе можно оказаться в ситуации, когда мониторинг парка сам стал тем, за чем никто не следит.

Если у вас уже есть сервер под другие задачи компании (1С, файловый обмен, внутренний портал), Traccar в большинстве случаев можно развернуть на нём же — нагрузка от телематики парка в 40 машин обычно не настолько велика, чтобы требовать отдельной машины. Разумная предосторожность — изолировать сервис в отдельном Docker-контейнере, чтобы обновления и возможные проблемы с ним не задевали остальные сервисы.

Сеть, SIM-карты и надёжность канала

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

  • Канал связи трекер → интернет — зона ответственности мобильного оператора и SIM-карты в трекере. Она не меняется от того, куда именно данные приходят дальше: смена сервера мониторинга не влияет на качество сотовой связи в районе, где едет машина.
  • Доступность сервера приёма — уже ваша зона ответственности при переходе «своими силами». Раньше за uptime отвечал вендор незаметно для вас, теперь отвечаете вы, и это стоит учитывать при выборе, где размещать сервер.

Практический момент, который стоит проверить заранее: если трекеры в машинах, которые ездят по России, а сервер вы разместили за рубежом, задержка и стабильность соединения обычно остаются в пределах нормы для передачи телематических данных (это не видеопоток, требования к задержке невысокие), но маршрут пакетов стоит один раз проверить на живом трекере, прежде чем переводить весь парк. Отдельно стоит продумать вопрос хранения и передачи персональных данных водителей — координаты и события привязаны к конкретному человеку за рулём, а значит, формально попадают под требования законодательства о персональных данных, и то, где именно физически стоит сервер, здесь не второстепенный вопрос, а часть комплаенса, который стоит обсудить с юристом компании перед переходом.

Ещё один нюанс — статические публичные порты, открытые для приёма данных от трекеров, теоретически видны любому, кто сканирует диапазон адресов. Это не повод отказываться от идеи (иначе не работал бы вообще ни один сервис телематики в мире), но повод не лениться с базовой гигиеной: ограничить на файрволе доступ к портам управления сервером (SSH, веб-панель администрирования Traccar) только по IP-адресам офиса или через VPN, оставив открытыми наружу только те порты, которые реально принимают данные от трекеров.

Экономика перехода: когда свой сервер окупается

Точную сумму экономии для конкретной компании вывести без реальных цифр её текущего тарифа невозможно — тарифы у разных сервисов телематики отличаются, и подписка на 40 машин у одного вендора может ощутимо отличаться от другого. Но сама логика расчёта простая и её стоит проделать на своих цифрах:

Облачный сервис (плата за машину)Свой сервер
Зависимость от числа машинРастёт линейно с паркомНе зависит (в разумных пределах роста)
Что оплачиваетсяПодписка помашинно, ежемесячноАренда сервера, фиксированная сумма
Кто отвечает за uptimeВендорВы (или тот, кому доверили администрирование)
Гибкость настройки отчётов и геозонВ рамках интерфейса вендораПолная, включая доработку под свои процессы
Порог входаНизкий, всё готово из коробкиТребует настройки один раз

Смысл перехода становится очевиден на определённом размере парка: у совсем маленькой компании с 3-5 машинами возиться с собственным сервером обычно не имеет большого экономического смысла — экономия не окупит время на настройку и администрирование. А вот при парке в районе 40 фур, о которых речь в этой статье, ежемесячная плата за подписку на такое число машин обычно уже кратно превышает стоимость аренды сервера, достаточного для приёма телематики с этого же парка — и дальше, при росте парка, разрыв в пользу собственной инфраструктуры только увеличивается, потому что стоимость сервера растёт гораздо медленнее числа машин.

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

Похожая логика работает и для смежных задач транспортной компании — например, для хранения архива путевых листов и электронных транспортных накладных или для маршрутизации доставок собственными средствами: в обоих случаях вопрос тот же — платить по нарастающей за облачный сервис или один раз настроить свою систему на своём сервере. Если сомневаетесь, стоит ли вообще выносить мониторинг из подписки, полезно сначала честно посчитать цену мониторинга на своих цифрах — методика расчёта там применима не только к серверному мониторингу, но и к телематике парка.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.

Арендовать сервер

Нужны сами нейросети для контента?

Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.

Частые вопросы

Нужно ли менять трекеры на машинах при переходе на свой сервер?

В большинстве случаев нет. Трекер просто отправляет данные на IP-адрес и порт, которые в нём прописаны, — достаточно поменять этот адрес на адрес вашего сервера, если трекер работает по протоколу, который поддерживает выбранное вами серверное ПО.

Что будет с историей треков за прошлые месяцы у старого сервиса?

Зависит от возможностей текущего провайдера — уточните заранее, доступен ли экспорт истории (обычно в виде файла с координатами и таймстампами) и в каком формате. Полного автоматического переноса истории в новую систему обычно ожидать не стоит.

Что если один трекер использует протокол, который не поддерживается выбранным серверным ПО?

Такое возможно у редких или устаревших моделей. В этом случае для этой конкретной машины проще оставить старый сервис мониторинга (или сменить сам трекер на более распространённую модель), чем пытаться написать поддержку протокола с нуля.

Нужен ли выделенный сервер только под GPS-мониторинг или можно на общем?

Для парка в 40 машин отдельный сервер обычно не требуется — нагрузка невелика, и сервис можно разместить в контейнере на существующем сервере компании вместе с другими задачами, если ресурсов достаточно.

Что делать, если сервер с приёмом данных временно недоступен?

Часть современных трекеров буферизует данные и досылает их при восстановлении связи, часть — нет. Это стоит уточнить по конкретной модели трекера заранее и заложить резервирование (например, второй сервер или регулярный мониторинг доступности основного) для критичных случаев.

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →