ООО "ОРИОН ТРЕКИНГ ПЛЮС"
Авто/Мото
Россия
Порталы и сервисы
IOS, Android
Январь 2023
Клиент обратился к нам с идеей сервиса, который помог бы транспортным компаниям экономить деньги на топливе и техническом обслуживании техники за счет более бережного вождения. Для этого в каждой машине устанавливается терминал, который аккумулирует данные с датчиков: скорость движения, периоды холостого хода, нажатие педалей, расход топлива и другие параметры. Все эти данные необходимо обрабатывать в реальном времени, чтобы владелец автопарка мог получать актуальные сводки и вовремя реагировать на случаи неэкономного вождения.
От нас требовалось разработать web-сервис, который сможет оперативно обрабатывать огромные массивы данных и предоставлять клиенту отчётность о состоянии автомобилей, качестве вождения водителей, маршрутах, расходе топлива и производить оценку по группам показателей. Также IT-решение должно было включать:
- личный кабинет пользователя с доступом к отчетам, рейтингам, истории поездок и другому функционалу;
- личный кабинет водителя с рейтингом и детализацией штрафов;
- интеграцию с ГЛОНАСС, интерактивную карту с возможностью отследить путь - машины, заправки и сливы топлива, места, где, водитель получил штрафы;
- расписание работы водителей, которое составляется как автоматически, с помощью личных карт тахографа или мобильного приложения, так и вручную;
- дашборды водителей с подробной информацией и рейтингом, детализированные карточки транспортных средств.
Разработали систему, которая позволяет анализировать информацию о транспортных средствах и водителях в реальном времени. В сервисе можно оценить использование автомобиля и работу каждого водителя. Эти процессы взаимосвязаны: состояние автомобиля оценивается с учетом действий всех, кто управлял им в заданный период. При этом каждый водитель может быть оценен индивидуально.
В системе существует два типа пользователей: владельцы и водители. Для каждого из них мы предусмотрели свой функционал.
Учетная запись руководителя дает доступ к данным машин и водителей, информации о маршрутах и штрафах, картам, таблицам. Компания-заказчик предоставляет доступ к сервису разным транспортным предприятиям, для новых пользователей доступен пробный период. Завести аккаунт для владельца можно быстро, после этого он сможет добавлять свои автомобили в систему. Для удобства мы предусмотрели возможность создавать группы машин, чтобы применять одни и те же настройки для одинаковых моделей транспортных средств. Например, если все автомобили транспортной компании одной марки и модели, владельцу не нужно настраивать каждую карточку отдельно: достаточно ввести параметры один раз и автоматически применить их ко всем остальным машинам.
Сделали его в форме настраиваемой таблицы. Всего для сравнения доступны 23 параметров, и пользователь может вывести необходимый набор колонок отдельно. Для расчетов используются формулы, в сервисе можно открыть любую из них.
Сервису приходится обрабатывать огромные массивы данных: у крупных перевозчиков в автопарке может быть большое количество автомобилей. Так, у одного из текущих клиентов в распоряжении около 1000 транспортных средств. Поэтому, в качестве СУБД мы выбрали ClickHouse, разработанный для Яндекс.Метрики и «заточенный» для работы с большими объемами данных. Также мы оптимизировали код сервиса, чтобы снизить время обработки информации до минимума. Пользователь может вывести отчет за любой период для произвольного количества машин за несколько секунд.
Другой полезный инструмент для владельца транспортной компании — расписание рейсов. Благодаря картам тахографа и установленному у водителей мобильному приложению, система автоматически составляет список совершенных поездок. О каждой из них можно развернуть информацию: о машине, водителе, времени, маршруте и штрафах, полученных в пути. Важный момент: нередко в рейс выходят сразу два водителя на одном автомобиле. Система дифференцирует их с помощью карт тахографа и мобильного приложения. Поэтому водители могут не опасаться, что им «припишут» чужие ошибки.
Наш заказчик обучает инструкторов транспортной компании работе с сервисом. С помощью ПО они изучают информацию о конкретных ошибках водителей на маршруте и могут проработать их на занятиях.
Водитель также может авторизоваться в сервисе, чтобы увидеть данные о своих поездках и рейтинге: открыть карту маршрута и посмотреть, какие ошибки он совершил, за что получил штрафы. С момента запуска сервиса это можно было сделать с помощью компьютера. Сейчас мы также запустили мобильное приложение, которое дает доступ ко всей необходимой водителю информации и позволяет авторизоваться на рейс без карты тахографа.
В перспективе в сервисе появится голосовой помощник, который разрабатывается на стороне заказчика, но в последующем будет интегрирован с мобильным приложением. Он будет предупреждать водителя о сложных участках во время маршрута, давать советы по их правильному преодолению, а также — хвалить за удачное прохождение. Это решение позволит водителям снизить количество штрафов и получить дополнительную мотивацию, а владельцам автопарков — сэкономить еще больше средств на топливе и обслуживании автомобилей.
Интересными техническими решениями были интеграция с системой ГЛОНАСС и обработка данных. Данные с терминала автомобиля необходимо собирать постоянно, чтобы не пропустить изменения и нарушения. Так, когда машина стоит с заглушенным двигателем, информация от ГЛОНАСС приходит в систему раз в 5 минут, во время движения — каждую секунду. Это позволяет с максимальной точностью оценить прохождение водителем маршрута.
Система получает данные от каждой машины, потом обрабатывает их различными процессорами и рассчитывает характеристики ее состояния и различные показатели. Процессор — это скрипт, который вычисляет значение для конкретного процесса. Например, один скрипт может определять угол наклона местности по координатам автомобиля, другой — рассчитывать расход топлива, третий — определять скорость машины в заданный промежуток времени. Так, превышение скорости засчитывается, если водитель более пяти минут ехал быстрее допустимого: процессор анализирует для этого сообщения от тахографа за нужный промежуток времени. При просмотре карточки автомобиля пользователь видит уже рассчитанные данные. Вывести отчет можно за любой промежуток времени: благодаря ClickHouse он будет готов за несколько секунд.
Главная сложность интеграции с ГЛОНАСС заключалась в строгом ограничении количества запросов: не более одного запроса в секунду. В сервис занесено большое количество машин, и чтобы не допустить бана, мы создали менеджер очередей с помощью Redis. Используем ключ блокировки, чтобы не превысить число запросов: программа не обращается к ГЛОНАСС, если он включен, и периодически проверяет состояние. После каждого запроса ключ обновляется.
В сервисе есть возможность получать уведомления. Администратор пишет текст и выбирает, какие группы пользователей получат сообщение. У пользователей при этом появляется соответствующий значок на иконке колокольчика в правом верхнем углу экрана. Также в системе можно обратиться в техническую поддержку, если возникают вопросы или ошибки.
Разработали сервис, который позволяет снижать расходы на грузоперевозку с помощью экономичной эксплуатации транспорта. Установленные в каждом автомобиле датчики передают информацию о состоянии систем автомобиля на терминал, который отправляет их в систему. Сервис оперативно обрабатывает данные и производит расчеты. Владелец автопарка видит итоговые цифры в сводном отчете, который можно сгенерировать за любой промежуток времени.
На данный момент количество машин, занесенных в сервис «Орион трекинг» еженедельно увеличивается примерно на 5 единиц. Нашей разработкой пользуется один из крупнейших игроков рынка транспортно-логистических услуг, лидер мнений в своей сфере. При разработке мы ориентируемся на фидбэк от этой компании.
Сейчас многие аналогичные сервисы ушли из России, и у грузоперевозчиков возникла потребность в отечественном решении. Сейчас около 15 компаний рассматривает наш продукт в качестве альтернативы зарубежным. Мы продолжаем развивать его вместе с заказчиком, дополняем и дорабатываем функционал.
KozhinDev с удовольствием обсудит вашу задачу