Тип работы:
Предмет:
Язык работы:


Разработка сервиса для сбора информации с датчиков автомобилей различных категорий с последующим декодированием и аккумуляцией на серверах.

Работа №54740

Тип работы

Дипломные работы, ВКР

Предмет

информатика

Объем работы51
Год сдачи2017
Стоимость4770 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
69
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 4
Глава 1. ОПИСАНИЕ И РЕАЛИЗАЦИЯ ПРОТОКОЛОВ 6
1.1 Протокол: ASC-6 6
1.1.1 Описание методов 8
1.1.2 Описание данных пакета 10
1.2 Протокол: АвтоГРАФ 11
1.2.1 Описание данных пакета 11
1.2.2 Описание методов 13
1.3 Протокол: ГалилеоСкай 14
1.3.1 Описание данных пакета 14
1.3.2 Описание методов 19
1.4 Протокол: Wialon 22
1.4.1 Описание данных пакета 22
1.4.2 Описание методов 30
Глава 2. ВЫБОР СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ 32
2.1 PostgreSQL 32
2.2 MongoDB 33
2.3 Apache Kafka 34
Глава 3. АРХИТЕКТУРА СЕРВИСА 35
3.1 Incoming data 36
3.2 Packaging 36
3.3 Workers 37
3.4 Db-inserters 38
ЗАКЛЮЧЕНИЕ 40
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 41


В настоящее время множество компаний, работающих с транспортными средствами, должны владеть полной информацией о своих транспортных средствах, будь то их местоположение на карте, уровень топлива, пробег и многое другое. При наличии всей этой информации можно следить за качеством работы, и проводя анализ за какой-то период времени,оценивать риски компании и гибко подстраиваться или что-то изменять в процессе работы.
Существует множество решений для бизнеса, помогающих получить эту информацию, но зачастую все они узкоспециализированы и стоят больших денег.
Проблема, с который может столкнуться компания - это большая растрата средств на закупку узкоспециализированных решений и их дальнейшая интеграция в общую систему, что не всегда представляется возможным. Стоит еще учитывать тот факт, что подобные решения редко бывают масштабируемы и не всегда могут выдержать большие нагрузки.
Следовательно, необходимо решение, позволяющее компании выбрать определенный список функций, которые легко масштабируются и способны давать большой набор возможностей для сбора данных , не привязываясь к конкретному типу или марке транспортного средства, сохраняя при этом высокие показатели скорости и отказоустойчивости.
Целью данной дипломной работы является разработка сервиса для сбора данных с блоков управления автомобилей,не привязываясь к определенному типу или марке транспортного средства, тем самым давая возможность интегрировать данный сервис в любые транспортные средства.
Наиболее важным аспектом является возможность выдерживать большой объем данных при наименьших затратах на оборудование. Так как сбор информации происходит по таким датчикам как: датчик топлива, нагрузки на оси, датчик зажигания (вклвыкл) и т.д., а также сбор информации о положении машины в конкретный момент времени, зачастую подобные решения продаются по отдельности. У нас же было решено включить данный функционалв один сервис.
После сбора информации, сервис упаковывает данные в удобный для чтения и хранения формат, и отправляет на сервера компании или в облачное хранилище.
Для достижения цели были решены следующие задачи:
1. Разбор протоколов и реализация обработки данных из пакетов, что приходят с датчиков.
2. Разработка масштабируемой архитектуры, поддерживающую модульное подключения дополнительных протоколов.
В первой главе данной дипломной работы описан разбор протоколов передачи данных:
• Формат пакетов в сжатом и полном виде
• Описание параметров и их последовательность в пакете
• Реализация программного кода, отвечающего за разбор пакетных данных
Во второй главе описан выбор СУБД и ее дальнейшая роль в данном сервисе. Проводятся сравнения документо-ориентированных СУБД с последующим анализом производительности систем в контексте поставленных задач.
Третья глава описывает архитектуру сервиса. Архитектура раскладывается на слои, и дается описания функционала каждого слоя, а также взаимодействие слоев между собой.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Вдипломной работе рассмотрена важная проблема большинства компаний, имеющих отношение к работе с автомобилями. В первую очередь - это наличие необходимого функционала для комфортной работы с минимальным потреблением ресурсов.
Результатом работы стала готовыйсервис, позволяющийсобирать
данные из блоков управления, расположенных на автомобилях.
Сервис написан на низкоуровневом языке Go[5], позволяющем выдерживать большие нагрузки, при относительно малых ресурсах, тем самым отлично отвечая поставленным требованиям.Часть разработанного кода приведена в приложении.
Сервис собирает данные с датчиков и отправляет их на сервера компании, где в последующем представители компании могут наблюдать за показателями в реальном времени. Так как сервис был рассчитан на большие нагрузки, то компания будет получать данные с минимальной задержкой, от отправной точки, коим является транспортное средство, и до базы данных.
Данная сервис существенно сокращает затраты компании на покупку отдельных решений под тривиальныезадачи.
Сервис был протестирован в реальных компаниях г. Москвы и активно используется для мониторинга транспортных средств.



1. Официальная документация Apache Kafka [Электронный ресурс] / Apache Software Foundation, 2017. - Режим
доступа: https://kalka.apache.org/documentation/, свободный - Яз. Англ.
2. Официальная документация MongoDB [Электронный ресурс] / MongoDB, Inc, 2017. - Режим доступа: https://docs.mongodb.com/manual/, свободный - Яз. англ.
3. Официальная документация PostgreSQL [Электронный ресурс] / The PostgreSQL Global Development Group, 2017. - Режим доступа: https://www.postgresql.org/docs/9.5/static/index.html, свободный - Яз. англ.
4. Kafka: The Definitive Guide / Neha Narkhede, Gwen Shapira, Todd Palino, 2016. - 135c.
5. Go in Action / William Kennedy, 2015. - 190c.
6. Design of Hashing Algorithms / Josef Pieprzyk, 1993. - 43c.


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ