Основные справочники - Справочник функций и параметров виртуального датчика 

Page / - last modified by Андрей Калиновский on 2022/10/07 11:28 

Справочник функций и параметров виртуального датчика 
last modified by Андрей Калиновский
on 2022/10/07 11:28

Table of Contents
Побитовый контроль параметра

Функция или зарезервированный параметр	Описание	
if(<condition>, <then>, <else>)	Оператор if. При выполнении условия, заданного логическим выражением <condition> выполняется оператор <then>, иначе - <else>	
time	Дата и время (UTC)	
t	Время (UTC) в секундах	
date	Дата (UTC)	
cdate(<время>, <формат времени>)	Функция конвертирования времени записи пакета (выполняется преобразование даты из текстового представления в тип структуры даты и времени); используется при сравнении дат и времени. Параметр <формат времени> зависим от регистра. Примеры. if(date > cdate('2019-01-04', 'yyyy-MM-dd'), 1, 0) if(time > cdate('2019-01-04 05:30:00', 'yyyy-MM-dd HH:mm:ss'), 1, 0)	
()	Операторы группировки	
*, /, %	Операторы умножения, деления, получения остатка от деления	
+, -	Операторы сложения	
, ==, !=,	Операторы сравнения	
&&, and	Логическое И	
II, or	Логическое ИЛИ	
!, not	Логическое НЕ	
Abs(х)	Возвращает абсолютное значение числа x	
Acos(х)	Возвращает угол, косинус которого равен числу x	
Asin(х)	Возвращает угол, синус которого равен числу x	
Atan(х)	Возвращает угол, тангенс которого равен числу x	
Ceiling(х)	Округление до целого вверх	
Cos(х)	Возвращает косинус угла x	
Exp(х)	Возвращает число e, возведенное в степень x	
Floor(х)	Округление до целого вниз	
Getbit(x,y)	Возвращает y-й бит числа x	
IEEERemainder(x,y)	Остаток от деления x на y: Число, равное x – (y Q), где Q является частным x / y, округленным до ближайшего целого числа (если x / y находится на равном расстоянии от двух целых чисел, выбирается четное число). Если значение x - ( y Q) равно нулю, возвращается значение +0 при положительном x, или значение -0 при отрицательном x.	
Log(x,y)	Логарифм числа x по основанию y	
Log10(х)	Десятичный логарифм числа x	
Max(x,y)	Возвращает большее из двух указанных чисел	
Min(x,y)	Возвращает меньшее из двух указанных чисел	
Pow(x,y)	Возведение числа x в степень y	
Round(x,y)	Округляет десятичное значение x до указанного числа знаков после запятой y; значения посередине округляются до ближайшего четного числа.	
Sign(х)	Возвращает целое число, указывающее знак числа x	
Sin(х)	Возвращает синус угла x	
Sqrt(х)	Возвращает квадратный корень из числа x	
Tan(х)	Возвращает тангенс угла x	
lat	Возвращает значение широты	
lоn	Возвращает значение долготы	
speed	Возвращает значение параметра «Скорость»	
sats	Возвращает количество спутников GPS	
glonass	Возвращает количество спутников GLONASS	
sats+glonass	Возвращает количество всех спутников	
prev(параметр)	Вычисляет значение выражения для предыдущего сообщения в наборе	
unix(параметр)	Преобразует результат выражения, тип которого должен быть временной меткой, в Unix-время	
alt	Возвращает Высоту над уровнем моря	
Побитовый контроль параметра
На платформе мониторинга ГЛОНАССSoft предусмотрен побитовый контроль параметра, который предполагает возможность контролировать не весь параметр в целом, а конкретный бит.
Это удобно, если устройство через один параметр показывает множество разнообразных данных: например, первый бит отображает состояние сигнализации (вкл/выкл), второй — состояние водительской двери (открыта/закрыта), третий — состояние фар и т.д. Таким образом, при помощи побитового контроля параметра можно на основе одного параметра создать несколько различных датчиков, например, применительно к терминалам УМКа3хх можно контролировать девятый или пятнадцатый бит параметра STATUS (детектор глушения GNSS или вкл/выкл тангенты соответственно).
Для этого необходимо создать виртуальный датчик с указанием ссылки в формуле getbit(x,y), где: x - ссылка на датчик из параметра которого требуется получить бит; y - порядковый номер нужного бита, нумерация начинается с 0, где 0 - младший бит. Результат функции - значение бита с номером «y» (0 или 1).
Например для терминалов УМКа3хх поле STATUS отображается в десятичном виде на входе *А(100), подавление сигнала GNSS - девятый бит.
1. Создаем виртуальный датчик с выражением getbit(adc100,9).

В результате мы сможем наблюдать факт глушения GNSS.