SensorView

(Различия между версиями)
Перейти к: навигация, поиск
(Назначение)
(Настройка)
Строка 17: Строка 17:
 
== Настройка ==
 
== Настройка ==
  
Датчики, калибровка, граничные значения и отображаемые названия задаются файлом конфигурации SETTINGS.INI. Для задания граничных и отображаемых величин можно использовать два способа.  
+
Датчики, калибровка, граничные значения, цвета и отображаемые названия задаются файлом конфигурации SETTINGS.INI. Для задания граничных и отображаемых величин можно использовать два способа.  
  
 
Во-первых, использовать файл калибровки Locarus Informer. Этот файл нужно скопировать в каталог установки программы, а его имя указать в SETTINGS.INI параметром CALIBR. Программа будет искать в нем соответствие с номером отображаемого датчика, и использовать величины из этого файла.
 
Во-первых, использовать файл калибровки Locarus Informer. Этот файл нужно скопировать в каталог установки программы, а его имя указать в SETTINGS.INI параметром CALIBR. Программа будет искать в нем соответствие с номером отображаемого датчика, и использовать величины из этого файла.
Строка 25: Строка 25:
 
Второй способ имеет приоритет.
 
Второй способ имеет приоритет.
  
Вместо номера датчика для отображения можно использовать вычисляемое значение, определяемое математическим выражением с ключевым словом EVAL. В выражении могут быть использованы арифметические операции, скобки, и переменные датчиков, которые в момент вычисления будут заменены на их реальные значения.
+
Вместо номера датчика для отображения можно использовать вычисляемое значение, определяемое математическим выражением с ключевым словом EVAL. В выражении могут быть использованы функции (SUM и MEAN),арифметические операции, скобки, и переменные датчиков, которые в момент вычисления будут заменены на их реальные значения.
  
 
Пример файла SETTINGS.INI приведен ниже:
 
Пример файла SETTINGS.INI приведен ниже:
Строка 36: Строка 36:
 
; LOG    - имя лог-файла. если нету или пуста - лог не пишет
 
; LOG    - имя лог-файла. если нету или пуста - лог не пишет
 
; CALIBR - имя файла данных калибровки
 
; CALIBR - имя файла данных калибровки
; REBOOT - интервал в мнутах для принудительной перезагрузки приложения
+
; REBOOT - инетрвал в мнутах для принудительной перезагрузки приложения
 
; TIMEOUT - интервал опроса прибора в миллисекундах. по умолчанию 1000 - 1 секунда.
 
; TIMEOUT - интервал опроса прибора в миллисекундах. по умолчанию 1000 - 1 секунда.
 
;
 
;
Строка 51: Строка 51:
 
;        выражение EVAL - любое математическое выражение.  
 
;        выражение EVAL - любое математическое выражение.  
 
;        можно использовать + - * / и скобки, в выражении
 
;        можно использовать + - * / и скобки, в выражении
;        можно использовать значение любого датчика, указав  
+
;        можно использовать значение любогог датчика, указав  
 
;        переменную - #n, где n - номер датчика (нумерация с 1).
 
;        переменную - #n, где n - номер датчика (нумерация с 1).
 +
;   Также можно использовать функции:
 +
; SUM(Выражение) - накапливает сумму
 +
; MEAN(Выражение) - возвращает среднее значение выражения.
 +
; (В функциях используется не более 1 млн. значений. В случае превышения порога происходит сброс.)
 
;
 
;
 
;        Например:
 
;        Например:
 
;            INPUT = EVAL (#2 + #3) / 2
 
;            INPUT = EVAL (#2 + #3) / 2
 
;        вычисляется среднее значение по двум датчикам, N2 и N3.
 
;        вычисляется среднее значение по двум датчикам, N2 и N3.
 +
;       INPUT = EVAL SUM(#3)
 +
;   вычисляется сумма значений датчика N3
 +
;       INPUT = EVAL MEAN(#2+#3)
 +
;   вычисляется среднее значений суммы значений датчиков N2 и N3
 +
;       INPUT = EVAL MEAN(SUM(#2)+SUM(#3))
 +
;   вычисляется среднее значений суммы сумм значений датчиков N2 и N3
 
;         
 
;         
 
;        На полученное значение распростаняется формат вывода RANGE
 
;        На полученное значение распростаняется формат вывода RANGE
 
;        заданный двумя величинами - MIN и MAX
 
;        заданный двумя величинами - MIN и MAX
 +
; COLORS - цвета сенсора в высоком, среднем и низком положениях
 +
; Формат: COLORS COLOR COLOR COLOR
 +
; где COLOR - это строка из множества {BLACK,WHITE,RED,BLUE,YELLOW,GREEN,MEGENTA,AQUA}
 +
; или выражение вида RGB(число,число,число)
 +
; где число лежит в границах [0,255] и записывается в десятичной системе счисления
 +
;
 +
; Например:
 +
; COLORS RED YELLOW GREEN
 +
; Сенсор в высоком положении имеет красный цвет, в среднем - желтый а в нижнем - зеленый
 +
; COLORS RED RGB(0,0,255) RGB(0,255,255)
 +
; Сенсор в высоком положении имеет красный цвет, в среднем - синий (RGB(0,0,255) или BLUE) а в нижнем - аква (RGB(0,255,255) или AQUA)
 +
; Если описание цветов отсутствует, то сенсор во всех положениях имеет белый цвет.
 
;
 
;
 
; TITLE - заголовок сенсора
 
; TITLE - заголовок сенсора
Строка 78: Строка 100:
 
;        KOEF - коэффициент для физических значений в отображаемые
 
;        KOEF - коэффициент для физических значений в отображаемые
 
;
 
;
;        Отображаемое значение = Физическое * KOEF
+
;        Отображаемое значение = Физическое*KOEF
 
;
 
;
 
[SYSTEM]
 
[SYSTEM]
PORT=COM5:,COM6:
+
PORT=COM5:,COM6:,COM8:
LOG=locarus.log
+
;LOG=locarus.log
 
CALIBR=CARSLIST.INI
 
CALIBR=CARSLIST.INI
 
TIMEOUT=5000
 
TIMEOUT=5000
 
 
[VALUE]
 
[VALUE]
 
 
[SENSOR1]
 
[SENSOR1]
INPUT=1
+
INPUT = 1
 
TITLE=Топливо\nбак #1
 
TITLE=Топливо\nбак #1
 
UNITS=литров
 
UNITS=литров
RANGE=0,15,0.0365
+
RANGE=0,300,0.1
 
+
COLORS=GREEN YELLOW RED
 
[SENSOR2]
 
[SENSOR2]
INPUT=2
+
INPUT = 2
 
TITLE=Топливо\nбак #2
 
TITLE=Топливо\nбак #2
 
UNITS=литров
 
UNITS=литров
RANGE=0,15,0.0365
+
RANGE=0,100,0.1
 
+
COLORS=RGB(255,0,0) RGB(255,255,0) RGB(0,255,0)
 
[SENSOR3]
 
[SENSOR3]
INPUT=EVAL (#1+#2)/2
+
INPUT = 3
TITLE=Среднее\nпо 2 бакам
+
TITLE=сенсор3
UNITS=литров
+
UNITS=кол-во
RANGE=0,15
+
RANGE=0,10
 +
COLORS=RGB(255,0,255) RGB(0,255,0) RGB(0,255,255)
 +
[SENSOR4]
 +
INPUT = EVAL SUM(#3)
 +
TITLE=сенсор4
 +
UNITS=кол-во
 +
RANGE=0,50
 +
COLORS=BLUE RGB(128,128,255) RGB(255,0,0)
 +
[SENSOR5]
 +
INPUT = EVAL (SUM(#2))
 +
TITLE=сенсор5
 +
UNITS=кол-во
 +
RANGE=0,1000,0.1
 +
[SENSOR6]
 +
INPUT = EVAL MEAN(#2*2-1)
 +
TITLE=сенсор6
 +
UNITS=кол-во
 +
RANGE=0,100,0.1
 +
COLORS=BLUE WHITE MAGENTA
 
</pre>
 
</pre>

Версия 08:09, 4 октября 2013

Назначение

Программа может быть установлена на бытовой GPS навигатор работающий под операционной системой Windows CE. Прибор подключается к навигатору специальным USB кабелем, и превращается в бортовой монитор, позволяющий контролировать состояние датчиков, скорость, получать и просматривать СМС сообщения с использованием GSM транспорта прибора.

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

SensorView screen.png

Установка

Если навигатор содержит носитель ResidentFlash то программа может быть установлена с помощью стандартного CAB файла установщика, с последующим копированием в каталог установки конфигурационных файлов.

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

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

Настройка

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

Во-первых, использовать файл калибровки Locarus Informer. Этот файл нужно скопировать в каталог установки программы, а его имя указать в SETTINGS.INI параметром CALIBR. Программа будет искать в нем соответствие с номером отображаемого датчика, и использовать величины из этого файла.

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

Второй способ имеет приоритет.

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

Пример файла SETTINGS.INI приведен ниже:

; Файл настройки Locarus Sensor Monitor
;
; Раздел SYSTEM
; PORT   - возможные порты через запятую. 
; LOG    - имя лог-файла. если нету или пуста - лог не пишет
; CALIBR - имя файла данных калибровки
; REBOOT - инетрвал в мнутах для принудительной перезагрузки приложения
; TIMEOUT - интервал опроса прибора в миллисекундах. по умолчанию 1000 - 1 секунда.
;
; Раздел VALUE
; Настройки датчика скорости. В текущей версии просто должен
; присутствовать пустой раздел
;
; Раздел SENSORn
; Последовательное описание сенсоров
;
; INPUT - номер контролируемого параметрического выхода. 
;         нумерация с 1
;         ИЛИ
;         выражение EVAL - любое математическое выражение. 
;         можно использовать + - * / и скобки, в выражении
;         можно использовать значение любогог датчика, указав 
;         переменную - #n, где n - номер датчика (нумерация с 1).
;	  Также можно использовать функции:
;		SUM(Выражение) - накапливает сумму 
;		MEAN(Выражение) - возвращает среднее значение выражения.
;		(В функциях используется не более 1 млн. значений. В случае превышения порога происходит сброс.)
;
;         Например:
;             INPUT = EVAL (#2 + #3) / 2
;         вычисляется среднее значение по двум датчикам, N2 и N3.
;	      INPUT = EVAL SUM(#3)
;	  вычисляется сумма значений датчика N3
;	      INPUT = EVAL MEAN(#2+#3)
;	  вычисляется среднее значений суммы значений датчиков N2 и N3
;	      INPUT = EVAL MEAN(SUM(#2)+SUM(#3))
;	  вычисляется среднее значений суммы сумм значений датчиков N2 и N3
;         
;         На полученное значение распростаняется формат вывода RANGE
;         заданный двумя величинами - MIN и MAX
; COLORS - цвета сенсора в высоком, среднем и низком положениях
;	Формат: COLORS COLOR COLOR COLOR
;	где COLOR - это строка из множества {BLACK,WHITE,RED,BLUE,YELLOW,GREEN,MEGENTA,AQUA}
;	или выражение вида RGB(число,число,число)
;		где число лежит в границах [0,255] и записывается в десятичной системе счисления
;
;	Например:
;		COLORS RED YELLOW GREEN
;	Сенсор в высоком положении имеет красный цвет, в среднем - желтый а в нижнем - зеленый
;		COLORS RED RGB(0,0,255) RGB(0,255,255)
;	Сенсор в высоком положении имеет красный цвет, в среднем - синий (RGB(0,0,255) или BLUE) а в нижнем - аква (RGB(0,255,255) или AQUA)
;	Если описание цветов отсутствует, то сенсор во всех положениях имеет белый цвет.
;
; TITLE - заголовок сенсора
;
; UNITS - единицы измерения
;
; RANGE - принудительная калибровка
;         если присутствует, то данные из файла CALIBR игнорируются
;
;         Возможные форматы: 
;             RANGE=MAX
;             RANGE=MIN,MAX
;             RANGE=MIN,MAX,KOEF
;
;         MIN,MAX - минимальное и максимальное значение сенсора
;                   если присутствуеи KOEF то в отображаемых единицах,
;                   если нет - в физически получаемых с датчиков значениях
;         KOEF - коэффициент для физических значений в отображаемые
;
;         Отображаемое значение = Физическое*KOEF
;
[SYSTEM]
PORT=COM5:,COM6:,COM8:
;LOG=locarus.log
CALIBR=CARSLIST.INI
TIMEOUT=5000
[VALUE]
[SENSOR1]
INPUT = 1
TITLE=Топливо\nбак #1
UNITS=литров
RANGE=0,300,0.1
COLORS=GREEN YELLOW RED
[SENSOR2]
INPUT = 2
TITLE=Топливо\nбак #2
UNITS=литров
RANGE=0,100,0.1
COLORS=RGB(255,0,0) RGB(255,255,0) RGB(0,255,0)
[SENSOR3]
INPUT = 3
TITLE=сенсор3
UNITS=кол-во
RANGE=0,10
COLORS=RGB(255,0,255) RGB(0,255,0) RGB(0,255,255)
[SENSOR4]
INPUT = EVAL SUM(#3)
TITLE=сенсор4
UNITS=кол-во
RANGE=0,50
COLORS=BLUE RGB(128,128,255) RGB(255,0,0)
[SENSOR5]
INPUT = EVAL (SUM(#2))
TITLE=сенсор5
UNITS=кол-во
RANGE=0,1000,0.1
[SENSOR6]
INPUT = EVAL MEAN(#2*2-1)
TITLE=сенсор6
UNITS=кол-во
RANGE=0,100,0.1
COLORS=BLUE WHITE MAGENTA
Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты