Задача:
Стоит задача принять пакеты данных от автомобильного GPS трекера (GPS трекера), записать их в лог-файл и переслать их для последующей обработки на другой сервер. При этом другой сервер (другое программное обеспечение) понимает только один формат данных, и нет возможности подключить другие трекеры к нему напрямую. Т.е. в этом случае GPS Tracker Data Logger будет работать как конвертер. При отправке данных трекер использует простой ASCII формат и не требует подтверждения приема данных сервером. Пример исходной информационной посылки:
&REPORT,000577,140909,092601,2018.6667,N,02425.4444,E,0,0,181,17,513,00,00.03,00.03,3,04,04
Требования:
Подразумевается что:
Решение:
После настройки и опробования парсера с помощью DDE можно сразу приступать к настройке. Осталось только активировать и настроить нужный модуль перенаправления в той конфигурации (рис. 1), где у нас работает парсер, и которая принимает данные от GPS трекера.
Замечание: Модуль перенаправления данных "Data redirecting" на закладке "Запрос Анализ Фильтрация" необходимо отключить.
Рис. 1.Активация модуля перенаправления данных.
Для настройки модуля перенаправления данных (рис. 2) выберите его в списке и кликните по кнопке "Настроить" под списком.
Рис. 2.Настройка адреса целевого сервера.
Рис. 3. Настройка модуля перенаправления данных.
Для примера, в таблице ниже приведен список полей и тип данных, который модуль ожидает получить от парсера. При сопоставлении необходимо учитывать, что модуль перенаправления ожидает получить данные от парсера в указанном формате. Также стоит учитывать, что список полей зависит от формата информационной посылки, которая будет формироваться. При сопоставлении значений модуль может производить автоматическую конвертацию:
Поле пакета данных | Тип данных | Описание |
---|---|---|
IMEI | Строка | Идентификатор устройства (номер, IMEI и т.п.) |
Дата и время | DateTime | UTC |
Долгота | Float | в формате GPS, например 48.71514 |
Широта | Float | в формате GPS, например 48.71514 |
Высота (м) | Integer | В метрах над уровнем моря |
Курс | Float | Угол 0-360 в градусах |
Скорость | Byte | Км/ч |
Путь | DWORD | Пройденный путь, км |
Реле 1-8 | Логический | Состояние реле 1-8 |
Датчик 1-8 | Логический | Состояние датчика 1-8 |
АЦП 1-4 | Byte | Значение АЦП 1-4 |
Напряжение 1-2 | Float | Напряжение в вольтах в диапазоне от 0 до 25.5 |
GPS | Byte | Количество спутников (0 – 14) |
Например, для настроенного ранее парсера можно сопоставить поля пакета следующим образом:
Поле пакета данных | Имя переменой парсера |
---|---|
IMEI | DEVICE_ID |
Дата и время | DATE_TIME |
Долгота | LONGITUDE |
Широта | LATITUDE |
Высота | ALTITUDE |
Курс | COURSE |
Количество спутников | GLONASS_SAT_NO |
Скорость | SPEED |
Значение аналогового входа №1 | AI1 |
Значение аналогового входа №2 | AI2 |
Пройденный путь | ODOMETR |
Для полей пакета данных, для которых нет переменных для сопоставления, можно указать значение по умолчанию. Данное значение будет также использоваться, если нельзя произвести автоматическое преобразование между типами данных переменной парсера и поля пакета данных.
Для аналоговых значений, которые могут выходить за границы возможного диапазона значений можно настроить пропорциональное масштабирование.
Теперь необходимо сохранить все изменения. Для этого закройте все диалоговые окна, кликнув на кнопке "OK".
После приема данных от автомобильного GPS трекера вы увидите в логе сообщений программы информацию о том, что данные перенаправляются (рис. 4).
Рис. 4. Сообщение о перенаправлении данных.