Бортовой терминал КТ-56

  1. Обоснование необходимости разработки проекта

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

При использовании  программно-аппаратного комплекса  у клиентов появляется возможность  оперативно определять:

− местоположение транспортного средства;

− траекторию его движения за любой промежуток времени;

− скоростной режим движения;

− параметры  работы автомобиля  и т. д.

А также, можно составлять текстовые и  графические документы, которые  фиксируют всю доступную информацию по транспортному средству.

Бортовой  терминал КТ-56, который является составной  частью аппаратно-программного комплекса, представляет собой электронное  телематическое устройство, предназначенное для осуществления дистанционного контроля транспортных средств, подвижных и стационарных объектов. Как показано на рисунке 1, получение информации о состоянии объектов мониторинга осуществляется за счет использования GSM-терминалов с модулем GPS/ГЛОНАСС (бортовые навигационные контроллеры КТ-55/КТ-56). Терминалы устанавливаются на автомобиле и, за счет взаимодействия со спутниками глобальной системы позиционирования, получают информацию о местоположении, скорости и направлении движения объекта. Вся полученная с объекта информация отправляется на сервер системы мониторинга. Пакеты данных попадают сначала в GPRS сеть оператора сотовой связи, чья SIM карта установлена в GSM-терминале, а затем на сервер. Данные, пришедшие от GSM-терминала на сервер, обрабатываются и сохраняются на нем.

 

Рис. 1. Принцип  работы аппаратно программного комплекса  «Сириус навигатор»

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

Программно-аппаратный комплекс «Сириус навигатор» применяется  в системах мониторинга грузовых автомобилей, оборудованных шиной CAN (аппаратная часть), работающей в стандарте FMS. Стандарт FMS CAN принят для европейских производителей коммерческого автотранспорта для стандартизации информации, поступающей от грузовиков и автобусов. Он применяется на грузовых автомобилях Mercedes Benz, MAN, Scania, Volvo, Iveco, DAF, число которых в России значительно, и постоянно растет. Этим стандартом может «воспользоваться» любое дополнительное оборудование (в том числе и других производителей, например, прицеп, навесное оборудование тягачей), имеющее соответствующий интерфейс. Причем предусмотрено, что неполадки с этим оборудованием не вызывают проблем с работой двигателя и трансмиссии.

Программно-аппаратный комплекс «Сириус навигатор» подключается к CAN шине, формирует и передает по интерфейсу данные по 20 параметрам в виде:

- скорость транспортного средства;

- состояние  педали сцепления;

- состояние  педали тормоза;

- состояние  круиз контроля;

- состояние вала отбора мощности;

- состояние  педали акселератора;

- расход  топлива транспортным средством  с момента выпуска;

- уровень  топлива;

- обороты  работы двигателя;

- нагрузка  на ось;

- общее  время работы двигателя;

- идентификационный  номер транспортного средства (VIN);

- общий  пробег транспортным средством;

- пробег  до очередного сервисного обслуживания;

- наличие  движения транспортным средством;

- превышение  скорости движения транспортным  средством;

- параметры  работы водителя 1;

- параметры  работы водителя 2;

- направление  движения транспортным средством;

- температура  работы двигателя.

Не имея доступа к FMS CAN, из указанных 20 параметров можно получить следующие:

-Скорость  автомобиля

-Обороты  двигателя

-Уровень  топлива в баке

-Температура  двигателя.

Их-то обычно и «снимает» бортовое оборудование для мониторинга, причем делается это  двумя способами - подключением к блоку либо штатных аналоговых, либо собственных аналоговых/цифровых датчиков, входящих в комплект, оплачиваемый клиентом. Нечего и говорить, что оба способа довольно дороги и неудобны.

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

Между тем  и эти усеченные 4 параметра, и  остальные 16, указанные в таблице, и еще многие другие содержатся в FMS CAN в готовом виде. Любой компании, для мониторинга автотранспорта, достаточно воспользоваться системой «Сириус навигатор», чтобы получить возможности:

- действительно полного мониторинга и дистанционной диагностики работы двигателя, получение «готовых» межремонтных интервалов и другой информации,

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

- получить  данные в распространенном формате,  удобном и для быстрой и экономичной передачи на сервер, и для последующей обработки.

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

В настоящее  время активность компаний, предлагающих услуги мониторинга автопарков, постоянно растет. Конкурентные преимущества получают те из них, которые предлагают клиентам наиболее полную информацию с наименьшими затратами. Система «Сириус навигатор» производства фирмы ООО «Альтаир» способна быстро обеспечить эти преимущества.

 

2. Расширенная постановка задачи

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

Одним из таких подключаемых сторонних устройств  является навигационный терминал КТ-56, являющийся составной частью системы  мониторинга автотранспорта “Sirius navigator” .

Назначение программного обеспечения: целью разработки данного программного обеспечения является облегчение процесса тестирования и наладки работы взаимодействия систем мониторинга автотранспорта «Sirius navigator» с автомобилями, оснащёнными FMS интерфейсом.

Аппаратная совместимость: для работы с бортовой шиной автомобиля и системой мониторинга автотранспорта “Sirius navigator”, программное обеспечение должно быть совместимо с адаптером USB-to-CAN compact (производитель IXXAT).

Операционная система: Windows XP, Vista, 7.

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

− считывает  данные с бортовой шины автомобиля, поступающие по FMS интерфейсу, с возможностью сохранения данных в файл;

− воспроизводит  ранее сохранённые данные (из файла), в соответствии с FMS стандартом;

− генерирует данные, соответствующие FMS стандарту, отображающие возможные режимы работы автомобиля и задающиеся посредством изменения доступных в программе параметров.

Необходимые инструменты:

− настройка  параметров CAN интерфейса;

− ручное изменение данных FMS стандарта;

− воспроизведение  данных из файла;

− сохранение данных в файл;

− симулятор  кабины транспортного средства.

 

3. Анализ подобных программных  продуктов

На рынке  присутствует несколько программ −  симуляторов FMS стандарта. Примером является программа FMSSim. Эта программа − коммерческий продукт немецкой компании LogiCom. Целью программы является возможность работы с данными FMS стандарта, исключая необходимость наличия грузового автомобиля.

Описание работы программы FMSSim

После запуска  программы FMSSim (FMS-Standard-Simulation) открывается основная форма (см. рис. 2). Все действия доступны с этого окна.

 

 

Рис. 2 Основная форма программы FMSSim

 

Главное окно разделено на три рабочих  группы:

− группа „Source of FMS-Standard” − источник FMS стандарта (позволяет выбрать режим работы программы, это может быть режим симулятора автомобиля);

− работа с внутренним ЛогФайлом;

− работа с пользовательским ЛогФайлом.

Симулятор автомобиля

 При  выборе симулятора автомобиля, открывается  окно, симулирующее кабину автомобиля. Изменение данных, передающихся  в соответствии с FMS стандартом, осуществляется в соответствии с рычагами управления, доступных в окне, отображённом ниже (см. рис. 3). Изменение значения переменных, положения бегунков, и состояния флагов позволяет контролировать содержимое FMS стандарта, данные которого могут быть переданы либо на USBtoCAN адаптер, либо в ЛогФайл.

 

Рис. 3 Окно симулятора программы FMSSim

Работа с ЛогФайлами

При выборе работы с ЛогФайлами, Рис. 4, исходные данные для FMS стандарта будут подгружаться из заранее подготовленного файла.

 

Рис. 4 Диалоговое окно работы с ЛогФайлом программы FMSSim

 

Вторая  рабочая группа позволяет производить  настройку доступных к изменению  и передаче данных FMS стандарта (см. рис. 5).

Рис. 5 Окно настроек доступных переменных программы FMSSim

 

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

Это может  быть вывод на экран параметров, в виде таблицы (см. рис. 6).

Рис. 6 Форма таблицы параметров программы FMSSim

 

Или запись в указанный ЛогФайл (см. рис. 7).

Рис. 7 Диалоговое окно сохранения ЛогФайла программы FMSSim

 

Преимущества и недостатки FMSSim фирмы LogiCom.

Преимущества:

− большое  количество поддерживаемых адаптеров (USB to CAN),

− гибкость настройки режимов работы,

− возможность  работы с симулятором кабины транспорта,

− возможность  воспроизведения данных из файла.

Недостатки:

− Коммерческое исполнение, стоимость (порядка 1000 Евро),

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

− Отсутствие режима считывания данных FMS стандарта с автомобиля с сохранением данных в файл.

 

4. Выбор среды разработки планируемого  программного продукта

 

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

Официально  Microsoft описывает С# как "простой, современный, объектно-ориентированный и безопасный к типам язык программирования, унаследованный от С и C++".

Синтаксически С# очень похож на C++, в том смысле, что многие ключевые слова — те же, кроме того, С# также разделяет с языком C++ ту же блочную структуру с фигурными скобками для выделения блоков кода и точками с запятой для завершения операторов. Первое впечатление от фрагмента кода С# состоит в том, что он выглядит подобно C++. Но, несмотря на это внешнее сходство, С# изучить намного легче, чем C++. Его дизайн в большей степени соответствует современным инструментам разработки, чем у его предшественников, и он предлагает простоту в использовании, как у Visual Basic, вместе с высокой производительностью и низкоуровневым доступом к памяти, характерные для C++, когда это необходимо.

C# предлагает разработчикам несколько преимуществ относительно C/C++. С# предоставляет слой промежуточного программного обеспечения в тех прикладных областях, которые позволяют программистам работать на более высоком уровне абстракции, чем C/C++. C# включает встроенные средства языка для потоков и синхронизации. C# создает также более безопасный код в том смысле, что выполняется больше проверок во время выполнения, чем в C/C++. Другое преимущество состоит в том, что требуется только одна версия исполняемого кода CIL программы C# для поддержки приложения на различных типах процессоров, выполняющихся на различных аппаратных платформах.

Для подчёркивания  преимуществ языка программирования C# , хотелось бы указать недостатки C++, к которым можно отнести:  
− Сложность и избыточность, из-за которых C++ трудно изучать, а построение компилятора сопряжено с большим количеством проблем. В частности:

а) Многие конструкции С++ позволяют делать то же самое, что и конструкции С, также присутствующие в С++;

б) Поддержка  множественного наследования реализации в ООП-подсистеме языка вызывает целый ряд логических проблем, а также создаёт дополнительные трудности в реализации компилятора;

в) Иногда шаблоны приводят к порождению кода очень большого объёма. Для снижения размера машинного кода можно  специальным образом подготавливать исходный код. Другим решением является стандартизованная ещё в 1998 году возможность экспорта шаблонов.

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

Среди возможностей С# необходимо особо отметить следующие:

− полная поддержка классов и объектно-ориентированного программирования, включая наследование реализации и интерфейсов, виртуальные функции и перегрузку операций;

− согласованный и четко определенный набор базовых типов;

−  автоматическая очистка динамически распределяемой памяти;

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

− указатели и прямой доступ в память при необходимости доступны, но язык спроектирован так, что в большинстве случаев без них можно обойтись;

− поддержка свойств и событий в стиле Visual Basic;

− простым изменением опций компилятора можно собирать либо исполняемые программы, либо библиотеки компонентов NET, которые могут быть вызваны из стороннего кода — так же, как это делается с элементами управления Active X (СОМ-компонентами).

Недостатками C# являются влияние на использование  памяти и производительность. Среда .NET Compact Framework, которая требуется для поддержки C# увеличивает размер ядра CE на несколько мегабайтов. Динамическая компиляция с проверкой во время выполнения работает медленнее, чем собственный код C/C++. Периодически должны выполняться процедуры сборки мусора для восстановления памяти из брошенных объектов кучи, и возможно даже удаления некоторого кода из кэша кода. Во время сборки мусора все потоки должны приостанавливаться, и это может иметь отрицательное влияние на производительность системы в реальном времени.

.NET спроектирована как новая среда, в рамках которой можно разработать практически любое приложение для Windows, в то время как С# — новый язык программирования, предназначенный специально для работы с .NET. Грубо говоря, .NET — это каркас, API-интерфейс для программирования на платформе Windows. Вместе с .NET Framework, С# представляет собой язык, спроектированный "с нуля", предназначенный для работы с .NET и впитавший в себя все достижения прогресса сред разработки и понимание принципов объектно-ориентированного программирования, которое выкристаллизовалось за последние 20 лет.

С# предоставляет средства для кодирования программного обеспечения практически любого типа или компонентов, которые может понадобиться написать для платформы Windows. Между тем, С# и .NET призваны перевернуть способ написания программ, и сделать программирование для Windows намного легче, чем оно когда-либо было.

Можно выделить некоторые преимущества .NET:

− Объектно-ориентированное программирование − и среда .NET Framework, и С# изначально полностью базировались на объектно-ориентированных принципах.

− Хороший дизайн − библиотека базовых классов, которая спроектирована "с нуля", исключительно интуитивно понятным образом.

− Разделение кода − среда .NET полностью изменила способ разделения кода между приложениями, введя концепцию сборки (assembly), которая заменила традиционные библиотеки DLL. Сборки имеют форматные средства для указания версий, и одновременно в системе могут существовать разные версии одних и тех же сборок.

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

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

− Visual Studio 2005 − .NET поставляется со средой разработки Visual Studio 2005, которая одинаково хорошо справляется с языками C++, С#, J# и Visual Basic 2005, а также с ASP.NET Visual Studio 2005 интегрирует в себе все лучшие средства соответствующих специфичных языковых сред Visual Studio .NET 2002/2003 и Visual Studio 6.

− C# представляет собой новый объектно-ориентированный язык, предназначенный для применения с .NET.

Недостатками  платформы .NET являются:

− снижение скорости работы приложений, написанных под платформу .NET;

− необходимость наличия библиотеки FrameWork.

 

5. Функциональная схема программного  продукта с расширенным описанием  функций

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

- Возможность  работы с файлами

- Наглядность  работы с данными FMS стандарта

- Работа  с адаптером USB-to-CAN

- Возможность  гибкой и в то же время  простой настройки режима работы  программы. 

В связи  с предъявленными требованиями, программу  укрупнено можно разделить на характерные модули, представленные на рисунке 7.

Модуль настроек – предназначен для адаптации программы к подключаемым устройствам. Реализован в виде отдельной закладки и содержит функции, позволяющие конфигурировать как состав FMS стандарта, так и параметры адаптера.

Модуль выбора источника – содержит в себе инструменты, позволяющие легко выбрать один из трёх источников, содержащих данные FMS стандарта. Наличие такого модуля связано с необходимостью выборки данных как с заранее подготовленных файлов, так и из источников, работающих в on-line режиме.

Обработка передачи данных FMS стандарта реализована в многопоточном варианте (см. рис. 8), а именно, при нажатии на кнопку «Старт», под каждый тип посылки FMS стандарта создаются потоки с таймерами, периоды которых определены интервалами передачи типов посылок. В соответствии с FMS стандартом, при достижении периода, каждым потоком вызывается свой метод формирования посылки, при этом контролируются исключительные права на используемые ресурсы. Направление передачи потока FMS данных определяется настройками режима работы программы, и может быть следующим:

- запись  в файл;

- обновление  таблицы отображения параметров;

- передача  данных на адаптер USB-to-CAN.

При нажатии  кнопки «Стоп» в процессе передачи. Таймера останавливаются, посредством  закрытия потоков, и передача данных прекращается.    

   Рис. 8 Модульная структура программы «Симулятор FMS стандарта» 

Модуль работы с файлом источником – позволяет пользователю организовать выборку данных из файла посредством запуска компонента OpenFileDialog, чем позволяет определиться с файлом, с которого считываются данные. Так же содержит функции для отображения пути подключаемого файла, с помощью присвоения значения свойства Text компонента TextBox свойства FileName компонента OpenFileDialog.

 

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

Содержит  модуль обработки данных FMS стандарта, а именно:

- скорость  транспортного средства;

- состояние  педали сцепления;

- состояние  педали тормоза;

- состояние  круиз контроля;

- состояние вала отбора мощности;

- состояние  педали акселератора;

- расход  топлива транспортным средством  с момента выпуска;

- уровень  топлива;

- обороты  работы двигателя;

- нагрузка  на ось;

- общее  время работы двигателя;

- идентификационный  номер транспортного средства (VIN);

- общий  пробег транспортным средством;

- пробег  до очередного сервисного обслуживания;

- наличие  движения транспортным средством;

- превышение  скорости движения транспортным  средством;

- параметры  работы водителя 1;

- параметры  работы водителя 2;

- направление  движения транспортным средством.

 

  • Модуль работы с адаптером – позволяет выполнить приём данных с CAN шины,  тем самым обеспечивается возможность приёма данных с CAN шины автомобиля, для сохранения информации в файл, или on-line анализа.

 

  • Модуль выбора приёмника – содержит в себе инструменты позволяющие легко выбрать один из трёх приёмников принимающих данные FMS стандарта, наличие такого модуля связано с необходимостью сохранения данных как в файл, так и в приёмник работающий в on-line режиме.

Обработка приёма данных FMS стандарта реализована следующим образом, смотри Рис.2.3. При нажатии на кнопку «Старт», запускается процесс считывания данных, и в зависимости от настройки режима работы приёмника, а именно:

- чтение  из файла;

- обновления  таблицы параметров;

- приём  данных с CAN адаптера.

Запускается либо метод анализа строки, либо метод обновления таблицы параметров, либо метод анализа массива, поступившего с адаптера. При нажатии кнопки «Стоп», процесс считывания данных останавливается.

 

  • Модуль работы с файлом приёмником - позволяет пользователю организовать запись данных в файл посредством запуска компонента SaveFileDialog, чем позволяет определиться с файлом в который записываются данные. Так же содержит функции для отображения пути подключаемого файла, с помощью присвоения значения свойства Text компонента TextBox свойства FileName компонента SaveFileDialog.
  • Модуль работы с таблицей параметров – предназначен для отображения данных в доступной для понимания форме, целью является контроль значений принимаемых параметров.

 

6. Экономическая и практическая  целесообразность разрабатываемой  системы

 

Каждая компания, выстраивая свой бизнес, на определенном этапе  развития должна повышать свою конкурентоспособность. Это подразумевает, в том числе, выполнение поставленной задачи в короткие сроки. Одним из способов реализации этой стратегии является программа-симулятор FMS стандарта, которая предназначена для облегчения процесса тестирования и наладки работы взаимодействия систем мониторинга автотранспорта «Сириус навигатор» с автомобилями, оснащёнными FMS интерфейсом.

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

При использовании программно-аппаратного  комплекса у клиентов появится возможность оперативно определять:

− местоположение транспортного средства;

− траекторию его движения за любой промежуток времени;

− скоростной режим движения;

− параметры работы автомобиля и так далее,

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

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

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

Бортовой терминал КТ-56