Wiki source code of Примеры заведения датчиков
Version 46.1 by Андрей Калиновский on 2024/02/20 12:39
Hide last authors
author | version | line-number | content |
---|---|---|---|
![]() |
23.1 | 1 | (% class="wikigeneratedid" %) |
![]() |
25.1 | 2 | |
![]() |
23.1 | 3 | |
![]() |
24.1 | 4 | ((( |
5 | **Содержание страницы:** | ||
6 | ))) | ||
7 | |||
![]() |
23.1 | 8 | {{toc/}} |
9 | |||
![]() |
24.1 | 10 | = (% style="color:#000000; font-size:16px" %)**Простые датчики**(%%) = |
![]() |
23.1 | 11 | |
![]() |
26.1 | 12 | == (% style="color:#000000; font-size:16px" %)**Зажигание** по дискретному входу(%%) == |
![]() |
15.1 | 13 | |
14 | [[image:image-20220519165301-1.png]] | ||
15 | |||
16 | |||
![]() |
26.1 | 17 | == (% style="color:#000000; font-size:16px" %)**Зажигание** по аналоговому входу (датчик сработает при напряжении более > 6000 мВ)(%%) == |
![]() |
15.1 | 18 | |
19 | [[image:image-20220519165301-2.png]] | ||
20 | |||
![]() |
26.1 | 21 | == (% style="color:#000000; font-size:16px" %)**Топливораздача** со счетного импульсного входа(%%) == |
![]() |
15.1 | 22 | |
23 | [[image:image-20220519165301-3.png]] | ||
24 | |||
25 | В зависимости от алгоритма подсчета импульсов терминалом выбирается тип тарировки «Накопитель» или «Разница от пред.». | ||
26 | |||
27 | Аналогичным образом создаются датчики проточных расходомеров топлива - в этом случае тип датчика следует выбрать «Расход топлива». | ||
28 | |||
![]() |
26.1 | 29 | == (% style="color:#000000; font-size:16px" %)**Уровень зерна** полученный по интерфейсу RS485(%%) == |
![]() |
15.1 | 30 | |
31 | [[image:image-20220519165301-4.png]] | ||
32 | |||
![]() |
26.1 | 33 | == (% style="color:#000000; font-size:16px" %)**Уровень топлива** полученный по интерфейсу RS485(%%) == |
![]() |
15.1 | 34 | |
35 | [[image:image-20220519165301-5.png]] | ||
36 | |||
![]() |
45.1 | 37 | Значения **меньше, чем указано в первой строке и больше или равные указанному в последней строке считаются невалидными и игнорируются.** Рекомендуется в последней строке таблицы добавлять входное значение выше максимально возможного. Например 1024 или 4096 для датчиков которые максимально передают уровень топлива в диапазонах 0-1023 или 0-4095. Выходное значение можно рассчитать линейно. |
![]() |
15.1 | 38 | |
![]() |
26.1 | 39 | == (% style="color:#000000; font-size:16px" %)**Температура прицепа **полученная по по интерфейсу 1-Wire(%%) == |
![]() |
15.1 | 40 | |
41 | [[image:image-20220519165301-6.png]] | ||
42 | |||
![]() |
29.1 | 43 | |
![]() |
34.2 | 44 | == (% style="color:#000000; font-size:16px" %)**Датчик пробега**(%%) == |
![]() |
29.1 | 45 | |
![]() |
33.1 | 46 | Для того, чтобы создать корректно работающий датчик пробега необходимо выбрать тип датчика **Датчик пробега**, указать тип тарировки **Таблица **и задать тарировку типа **0:0; 9999999:9999999**. Такая тарировка позволит корректно реагировать на те периоды, когда данные с датчика пробега не поступают в систему. |
![]() |
29.1 | 47 | |
![]() |
33.1 | 48 | Датчик настроенный как на примере ниже позволит вам использовать его при расчете значения **Текущий пробег**, из вкладки нормы, а также рассчитывать начальный и конечный пробег. |
![]() |
29.1 | 49 | |
![]() |
32.1 | 50 | [[image:image-20230607115954-1.png||height="600" width="615"]] |
51 | |||
![]() |
36.1 | 52 | == (% style="color:#000000; font-size:16px" %)**Весовой датчик**(%%) == |
53 | |||
![]() |
40.1 | 54 | Для получения данных по отвесам необходимо создать датчик с типом **Весовой терминал**. |
![]() |
15.1 | 55 | |
![]() |
39.1 | 56 | [[image:image-20230809160201-1.png||height="529" width="541"]] |
57 | |||
58 | |||
![]() |
41.1 | 59 | Рекомендуем также указать тарировку** -1:-1, 99999:99999,** это позволит предупредить случаи появления сообщений без данных, что поможет избежать дублирования отвесов. |
![]() |
39.1 | 60 | |
![]() |
42.1 | 61 | Для того, чтобы получать данные по взвешиваниям необходимо помимо датчика веса иметь rfid-считыватель. По rfid-метке два отвеса могут быть объединены в одно взвешивание, что позволит найти разницу в весе между ними. Для этого объект весовой, помимо датчика с типом **Весовой терминал**, должен иметь датчик с типом **RFID-водителя** и активной опцией** Постоянный сигнал RFID объекта рядом**. |
![]() |
39.1 | 62 | |
63 | |||
64 | |||
![]() |
42.1 | 65 | = (% style="color:#000000; font-size:16px" %)**Виртуальные**(%%) = |
![]() |
39.1 | 66 | |
![]() |
19.1 | 67 | {{video url="https://www.youtube.com/watch?v=T3alpKIQ4cE" width="50%"/}} |
![]() |
16.1 | 68 | |
![]() |
15.1 | 69 | [[**Датчик зажигания **по бортовому напряжению>>doc:Панель управления.Раздел "Объекты".Настройка зажигания по напряжению.WebHome]] |
70 | |||
71 | |||
![]() |
26.1 | 72 | == (% style="color:#000000; font-size:16px" %)**Подавление сигнала GNSS** полученное от терминала УМКа3хх(%%) == |
73 | |||
![]() |
15.1 | 74 | [[image:image-20220519165301-7.png]] |
75 | |||
76 | |||
77 | Для терминалов УМКа3хх поле STATUS отображается в десятичном виде на входе *А(100), подавление сигнала GNSS меняет девятый бит. В датчике задаем выражение getbit(adc100,9) | ||
78 | |||
![]() |
17.1 | 79 | {{video url="https://youtu.be/8i1A0xIBBpc" width="50%"/}} |
![]() |
15.1 | 80 | |
![]() |
26.1 | 81 | == (% style="color:#000000; font-size:16px" %)**Уровень топлива **с агрегирующей функцией суммирования или определения среднего значения.(%%) == |
![]() |
17.1 | 82 | |
![]() |
15.1 | 83 | [[image:image-20220519165301-8.png]] |
84 | |||
85 | |||
86 | [[image:image-20220519165301-9.png]] | ||
87 | |||
![]() |
18.1 | 88 | Агрегирующая функция «Сумма» применяется **при установке в каждый бак по одному датчику уровня топлива**. |
![]() |
15.1 | 89 | |
![]() |
18.1 | 90 | Агрегирующая функция «Среднее» применяется **при установке в один бак нескольких датчиков уровня топлива**. |
![]() |
15.1 | 91 | |
![]() |
18.1 | 92 | {{video url="https://youtu.be/hLFIcktZ9EM" width="50%"/}} |
![]() |
15.1 | 93 | |
![]() |
25.1 | 94 | |
![]() |
15.1 | 95 | **Уровень топлива **с валидацией по зажиганию |
96 | |||
97 | При использовании штатных датчиков топлива с инвертированной тарировочной таблицей возникает эффект когда при отключении зажигания напряжение с датчика падает в 0, что детектируется как полный бак. Для фильтрации можно использовать валидацию по датчику зажигания. | ||
98 | |||
99 | |||
100 | Для этого создаем физические датчики зажигания и уровня топлива с указанием псевдонимов ign и fuel | ||
101 | |||
102 | [[image:image-20220519165301-10.png]] | ||
103 | |||
104 | [[image:image-20220519165301-11.png]] | ||
105 | |||
106 | Затем создаем виртуальный датчик уровня топлива с выражением **//if(ign, fuel, 0)//** - если включено зажигание то передаем топливо как есть, в противном случае передаем вместо него 0. Заполняем тарировочную таблицу 2-мя сточками - 0 - 0 и максимальный_объем_бака - максимальный_объем_бака, что будет отсекать 0 полученный из условия формулы. В результате система будет считать невалидным уровень топлива полученный при отключенном датчике зажигания. | ||
107 | |||
108 | [[image:image-20220519165301-12.png]] | ||
109 | |||
![]() |
26.1 | 110 | == (% style="color:#000000; font-size:16px" %)**Уровень топлива **по датчику с изменившимся номером входа.(%%) == |
![]() |
15.1 | 111 | |
112 | Для этого создаем физические датчики с типом «Произвольный», тарировочными таблицами, старым и новым номерами входов и указанием псевдонимов fuel_old и fuel_new. | ||
113 | |||
![]() |
16.1 | 114 | [[image:image-20220519165301-13.png]] |
115 | Затем создаем виртуальный датчик уровня топлива с выражением **//if(time > cdate('2021-12-22 00:00:00', 'yyyy-MM-dd HH:mm:ss'), fuel_new, fuel_old)//** - после 2021-12-22 00:00:00 (время по UTC) топливо отображается с нового ДУТ, а до этого времени включительно со старого ДУТ. | ||
![]() |
15.1 | 116 | |
117 | [[image:image-20220519165301-14.png]] | ||
![]() |
20.1 | 118 | |
![]() |
27.1 | 119 | //Пример заведения аналогового датчика в статье [["Настройка аналогового ДУТ" >>https://wiki.glonasssoft.ru/bin/view/%D0%9F%D0%B0%D0%BD%D0%B5%D0%BB%D1%8C%20%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F/%D0%A0%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB%20%22%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D1%8B%22/%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%20%D0%B0%D0%BD%D0%B0%D0%BB%D0%BE%D0%B3%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE%20%D0%94%D0%A3%D0%A2/]]// |