Компания ТРАССКОМ, которая является одним из крупнейших поставщиков оборудования для интеллектуальных транспортных систем и участником Национального проекта «Безопасные качественные дороги» (БКД), обратилась за разработкой онлайн-сервиса для оказания услуг широкому кругу потребителей по предоставлению данных о прогнозе условий дорожного движения.
Для сбора метеорологических данных используют автоматические дорожные станции, которые:
- измеряют температуру и влажность воздуха, точку росы;
- фиксируют состояние дороги и толщину отложений;
- количество и интенсивность осадков;
- скорость и направление ветра;
- атмосферное давление;
- высоту снежного покрова;
- наличие и концентрацию дорожных реагентов;
- уровень оптической видимости;
- температуру поверхности асфальта и дорожной конструкции.
На основе этих показателей и данных поставщиков прогноза погодных условий формируются специализированные дорожные прогнозы, которые в сочетании с системой оповещений помогают корректировать скоростной режим, допустимое расстояние движения транспорта в условиях плохой видимости в зависимости от состояния дорожного покрытия, сокращая риск аварий.
Проблема и решение
Чтобы получить данные о состоянии дорожного полотна, потребитель должен собрать данные из нескольких источников и сделать расчет, используя модель METRo, разработанная департаментом окружающей среды и климатических изменений правительства Канады.
Данная модель прогнозирования рассчитывает поток тепла через поверхность дороги, представляя его в виде суммы солнечного и поглощенного инфракрасного излучений, излучаемой энергии, турбулентного и латентного тепловых потоков, изменения теплоты за счёт фазового перехода, а также антропоморфных источников.
Входными данными данной модели являются данные атмосферного прогноза, а также данные, полученные с автоматических дорожных метеостанций.
Поставщики погодных данных накладывают определенные ограничения для внешних запросов (квота запросов, задержка между запросами и др.), что может создавать серьезные сбои и трудности в работе приложений, которые привязаны напрямую к API поставщика. Сервис решает эту проблему, организуя очередь запросов и кеширование данных.
Система организована на микросервисной архитектуре, что дает возможности горизонтального масштабирования при необходимости.
Для запуска микросервисов используется Docker-контейнер. Все контейнеры развернуты и управляются в кластере Kubernetes.
Функционал сервиса
Созданный в рамках проекта сервис не предполагает взаимодействия с конечным пользователем, так как является составной частью комплексного решения для интеллектуальных транспортных систем.
Для получения данных общего числового атмосферного прогноза сервис интегрируется с сервисами следующих поставщиков метеоданных:
- Норвежский метеорологический институт, предоставляющий данные прогноза по модели GFS;
- финская компании Foreca, предоставляющая данные по модели HRES от ECMWF.
Пользователь, который приобрел тариф общего числового прогноза, подключается к модулю выбранного поставщика метеоданных. Через единый API он получает общие данные о температуре, ветре, осадках, давлении.
Пользователь, который приобрел тариф специализированного дорожного прогноза, получает возможность зарегистрировать собственные метеостанции, используемые для сбора локальных погодных данных.
Результат
Разработанный сервис использует промежуточный API, который организует очередь запросов и кеширование данных. Это позволяет выполнять меньше медленных операций с запросами к внешним API и показывать конечным пользователям заранее сохраненные данные в удобной для отображения форме.
Удобный и понятный интерфейс сервиса позволяет легко разобраться в тарифах, внести данные об автоматических дорожных метеостанциях, выбрать поставщика погодных данных и выводит всю необходимую информацию в доступной для пользователя форме.
Наши специалисты имеют большой опыт в разработке программного обеспечения, как для автоматизации и управления бизнесом, так и для решения конкретных специфических задач. Переходите на сайт «СофтЭксперт», чтобы оставить заявку. Мы подберем индивидуальное решение и составим подробное техническое задание, чтобы выполнить все работы точно в срок.