Система мониторинга крупногабаритных грузов во время транспортировки

Beacon технологии для сбора и передачи информации по bluetooth

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

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

Мы разработали систему для мониторинга состояния груза в пути с использованием бикон технологий. Система позволяет в реальном времени следить за движением груза по маршруту, регистрирует все воздействия на груз, помогает в осуществлении инспекций на перевалочных пунктах и в составлении документов и отчетов.

Цель проекта

Заказчик обратился к нам для разработки инновационного ИТ-продукта для продажи сервиса производителям транспортируемых деталей.

Ключевая особенность

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

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

Технологии реализации

Java, SpringBoot, JasperReports, PostgreSQL

Бэкенд

Typescript, Angular, PrimeNG, Leaflet

Фронтенд

Android, Kotlin

Мобильное приложение

Docker, Amazon Web Services

Инфраструктура

Стандартный функционал

Механизм отслеживания перемещений транспортного средства с крупногабаритным грузом и состояния каждого отдельного груза в пути.
Мобильное приложение для снятия данных с маячков, отслеживающих качественные характеристики грузов. Оно позволяет зафиксировать характер и время повреждения груза.
Отправка всей собранной информации в веб-интерфейс. Грузоотправитель и грузополучатель могут проверить местоположение и сохранность груза на протяжении всего пути следования.
Механизм отслеживания перемещений транспортного средства с крупногабаритным грузом и состояния каждого отдельного груза в пути.
Мобильное приложение для снятия данных с маячков, отслеживающих качественные характеристики грузов. Оно позволяет зафиксировать характер и время повреждения груза.
Отправка всей собранной информации в веб-интерфейс. Грузоотправитель и грузополучатель могут проверить местоположение и сохранность груза на протяжении всего пути следования.

Специальный функционал

Синхронизация с Marine Traffic для отслеживания движения кораблей

Мы оптимизировали систему для морских грузоперевозок в условиях отсутствия связи. Корабли в рейде часто не имеют доступа к интернету, поэтому мы интегрировали сервис Marine Traffic, с помощью которого всегда можно определить расположение корабля.

Система передает эту информацию в веб-приложение, где можно отследить маршрут перемещения всех используемых грузовых судов.

Датчики для отслеживания состояния груза в пути

Синхронизация со специальными маячками, которые устанавливаются на каждую крупногабаритную деталь и отслеживают состояние груза. В маячках есть акселерометры, фиксирующие значения ускорения, и датчики температуры.

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

Мобильное приложение для считывания данных с маячков

Разработанное ПО для телефонов позволяет считывать по Bluetooth данные, накопленные в маячках за время пути до пункта перегрузки.

Мобильное приложение оповещает пользователя о зафиксированном резком ускорении, которое свидетельствует о падении детали, и о критических значениях температур, что говорит о возможном затоплении или возгорании груза.

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

Интеграция мобильного приложения с сайтом для отслеживания грузов

Вся информация с датчиков, установленных на перевозимых деталях, передается в разработанный нами веб-интерфейс.

Отчеты о повреждениях, созданные инспекторами с помощью мобильного приложения, также отправляются на сайт.

Мобильное приложение способно работать в автономном режиме и отправлять все собранные данные в момент возобновления связи.

Интеграция с сервисом отображения погоды на карте

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

Импорт Excel файлов с данными о новых транспортных средствах

Чтобы добавить новое транспортное средство в систему, пользователю нужно лишь импортировать Excel файл с основной информацией о нем.

Статистика

Проектные практики

Расширение бизнес-логики без нарушения существующей архитектуры

Добавление новых видов транспорта, новых датчиков и новых видов инспекций подтолкнуло к применению интересного решения: ключевые сущности выполнены в виде расширяемых шаблонов, вид и поведение которых настраивается в зависимости от устройства, роли пользователя и других параметров. Таким образом мы не только смогли расширить бизнес-логику системы, но и обеспечить ее подстраиваемость под различные сегменты компаний-клиентов нашего заказчика.

Создание инновационного продукта

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

Смена поставщика оборудования

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

Обработка несистематизированных данных от устройств

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