Компонетн График — косяки

Стартовая страница Форумы Понять, как работает ПО Компонетн График — косяки

Просмотр 15 сообщений - с 106 по 120 (из 137 всего)
  • Автор
    Сообщения
  • #20135
    Mikhail
    Модератор

    Модуль экспорта в БД установлен на RPi или на основной сервер Windows?

    #20140
    manjey73
    Участник

    На основной сервер Windows, который принимает. Надо было на RPi устанавливать ?

    #20141
    Mikhail
    Модератор

    Да, Rapid Gate нужно обязательно на RPi.
    Сама база данных может быть на любом сервере. Откройте для неё порт на firewall если нужно.

    • Этот ответ был изменен 2 года, 10 месяцев назад от Mikhail.
    #20142
    manjey73
    Участник

    Не Gate и модуль экспорта на RPi ? Gate и так на RPi

    С этим будет проблема, в плане портов. Итак админов уже задолбал…
    На нужное время я и так базу на RPi могу посмотреть, какой статус у канала оригинала.
    Там всегда 1…

    А вот Gate в ровное количество секунд, вообще не передает данные, а потом передает на :00 секунд со статусом =2.

    #20151
    Mikhail
    Модератор

    Имел ввиду, что модуль экспорта в БД должен стоять на RPi, в этом весь смысл.

    #20153
    manjey73
    Участник

    Не совсем понимаю почему и зачем?

    Канал будет передаваться со статусом 1, тем более номер канала 1012 на RPi
    А на принимающем сервере номер канала 113

    то есть 1012 —> 113
    Каналы 160, 161, 162 на принимающем сервере дорасчетные от 113-ого на принимающем сервере.

    Что даст установка модуля экспорта на RPi? какой статус у передаваемого канала 1012 я и так могу посмотреть.

    #20154
    Mikhail
    Модератор

    Не совсем понимаю почему и зачем?

    Потому что RPi является источником данных. На нём нужно проанализировать поступающие текущие и архивные данные.

    #20155
    manjey73
    Участник

    Графики Про показывают на RPi канал 1012 как нормальный (статус =1 а не 2 и зеленого цвета значений)
    Так же скачивал dat файлы и утилитой смотрел, все каналы со статусом 1 со счетчика.

    Как бы драйвер читает данные со счетчика и записывает в базу, драйвер на все сигналы, кроме профилей средней мощности не знает о существовании иных статусов, кроме =1

    Еще раз, канал 1012 (оригинал на Rpi) статус =1
    Канал 113 на принимающем сервере на моменты времени, равные минутным имеют статус =2

    Если смотреть по БД после модуля экспорта, то сперва приходят значения со статусом =1 но где секунды не равны :00 а потом приходят значения, где секунды уже :00 но со статусом =2

    Смотрим внимательно прошлый пост, убрал лишние данные для понимания.

    "2021-06-15 13:21:08.489877"	113	0.944	1
    "2021-06-15 13:20:38.416923"	113	0.944	1

    И еще раз обновил отображение базы по F5

    "2021-06-15 13:21:08.489877"	113	0.944	1
    "2021-06-15 13:21:00"	        113	0.944	2
    "2021-06-15 13:20:38.416923"	113	0.944	1

    Суть. Первое значение, экспортированное в БД модулем на принимающем сервере датируется — -:- -:08.хххх то есть через 8 секунд после равного минутного

    Я тут же обновляю отображение БД и получаю в экспорте значение, уже на :00 секунд но со статусом =2 (архивное)

    Это принимающий канал 113, канал у передатчика 1012 имеет в базе статусы =1 на все метки времени, так как это прямой входной канал из счетчика.

    Если получится настроить на следующей недели, то сделаю. Вы думаете, что модуль Экспорта в БД раньше времени отправляет данные в БД, до прихода значения из драйвера?
    Но какое отношение это имеет к всплескам на графиках, если модуль экспорта до этого не использовался вообще? только Rapid Gate и все…

    #20156
    Mikhail
    Модератор

    Модуль экспорта ценен в данной ситуации тем, что отправляет значения сразу по факту их прихода (добавляет в очередь на запись, если точнее). С помощью нужных SQL-скриптов мы получим объективную картину. Сам модуль экспорта не вносит никаких искажений в данные.
    Поэтому как только появится коннект к БД из RPi, донастроим скрипты и посмотрим на данные.

    #20157
    manjey73
    Участник

    БД зафиксировала события, сделал поканально.
    160-й

    "2021-06-16 01:38:22.236263"	1	3	26	160	0.9933329999999999	13	0	12	false
    "2021-06-16 01:38:42.17376"	1	3	26	160	0	         12	0.9933329999999999	13	false
    "2021-06-16 08:42:02.424258"	1	3	26	160	0.9964019999999999	13	0	12	false
    "2021-06-16 08:42:22.455313"	1	3	26	160	0	         12	1.010724	13	false
    "2021-06-16 16:06:47.929642"	1	3	26	160	0.9636659999999999	13	0	12	false
    "2021-06-16 16:11:02.460786"	1	3	26	160	0	         12	1.003563	13	false
    "2021-06-17 06:27:22.197113"	1	3	26	160	1.01277	13	0	12	false
    "2021-06-17 06:27:42.306413"	1	3	26	160	0	         12	1.01277	13	false
    "2021-06-17 17:57:22.355971"	1	3	26	160	0.9892409999999999	13	0	12	false
    "2021-06-17 17:57:42.355904"	1	3	26	160	0	         12	0.9892409999999999	13	false
    "2021-06-20 01:38:23.046388"	1	3	26	160	0.9953789999999999	13	0	12	false
    "2021-06-20 01:38:42.468222"	1	3	26	160	0	         12	1.007655	13	false
    "2021-06-21 15:02:02.285148"	1	3	26	160	0.9964019999999999	13	0	12	false
    "2021-06-21 15:02:22.300511"	1	3	26	160	0	         12	0.9974249999999999	13	false

    161-й

    "2021-06-16 01:38:22.236263"	1	3	26	161	1.016637	13	0	12	false
    "2021-06-16 01:38:42.17376"	1	3	26	161	0	12	1.016637	13	false
    "2021-06-16 08:42:02.424258"	1	3	26	161	1.0197779999999999	13	0	12	false
    "2021-06-16 08:42:22.455313"	1	3	26	161	0	12	1.034436	13	false
    "2021-06-16 16:06:47.929642"	1	3	26	161	0.9862739999999999	13	0	12	false
    "2021-06-16 16:11:02.460786"	1	3	26	161	0	12	1.027107	13	false
    "2021-06-17 06:27:22.197113"	1	3	26	161	1.03653	13	0	12	false
    "2021-06-17 06:27:42.306413"	1	3	26	161	0	12	1.03653	13	false
    "2021-06-17 17:57:22.355971"	1	3	26	161	1.012449	13	0	12	false
    "2021-06-17 17:57:42.355904"	1	3	26	161	0	12	1.012449	13	false
    "2021-06-20 01:38:23.046388"	1	3	26	161	1.0187309999999998	13	0	12	false
    "2021-06-20 01:38:42.468222"	1	3	26	161	0	12	1.0312949999999999	13	false
    "2021-06-21 15:02:02.285148"	1	3	26	161	1.0197779999999999	13	0	12	false
    "2021-06-21 15:02:22.300511"	1	3	26	161	0	12	1.0208249999999999	13	false

    162-й

    "2021-06-16 01:38:22.236263"	1	3	26	162	1.0535349999999999	13	0	12	false
    "2021-06-16 01:38:42.17376"	1	3	26	162	0	12	1.0535349999999999	13	false
    "2021-06-16 08:42:02.424258"	1	3	26	162	1.05679	13	0	12	false
    "2021-06-16 08:42:22.455313"	1	3	26	162	0	12	1.07198	13	false
    "2021-06-16 16:06:47.929642"	1	3	26	162	1.0220699999999998	13	0	12	false
    "2021-06-16 16:11:02.460786"	1	3	26	162	0	12	1.064385	13	false
    "2021-06-17 06:27:22.197113"	1	3	26	162	1.07415	13	0	12	false
    "2021-06-17 06:27:42.306413"	1	3	26	162	0	12	1.07415	13	false
    "2021-06-17 17:57:22.355971"	1	3	26	162	1.0491949999999999	13	0	12	false
    "2021-06-17 17:57:42.355904"	1	3	26	162	0	12	1.0491949999999999	13	false
    "2021-06-20 01:38:23.046388"	1	3	26	162	1.055705	13	0	12	false
    "2021-06-20 01:38:42.468222"	1	3	26	162	0	12	1.068725	13	false
    "2021-06-21 15:02:02.285148"	1	3	26	162	1.05679	13	0	12	false
    "2021-06-21 15:02:22.300511"	1	3	26	162	0	12	1.057875	13	false

    При этом если открыть графики каналов, то этого нет…
    Модуль экспорта БД с Raspberry как получится настроить, сообщу. Пока написал Одминам, чтобы порт пробросили 🙂

    • Этот ответ был изменен 2 года, 10 месяцев назад от manjey73.
    #20167
    Mikhail
    Модератор

    Буду ждать связи с БД из RPi. В SQL-скриптах сделайте разнесение текущих и архивных данных по разным таблицам, как я писал ранее. Ещё можно поставить WHERE, чтобы писать только 0.

    #20297
    manjey73
    Участник

    Как праильно добавить WHERE @val <= 0 для обоих таблиц.

    -- Вставить или обновить существующие архивные данные
    WITH upsert AS (UPDATE cnldata2 SET val = @val, stat = @stat 
    WHERE datetime = @datetime AND cnlnum = @cnlNum RETURNING *)
    INSERT INTO cnldata2 (datetime, cnlnum, val, stat)
    SELECT @dateTime, @cnlNum, @val, @stat
    WHERE NOT EXISTS (SELECT * FROM upsert)

    и

    -- Вставить текущие данные
    INSERT INTO cnldata1 (datetime, cnlnum, val, stat)
    VALUES (@dateTime, @cnlNum, @val, @stat)
    #20301
    Mikhail
    Модератор

    insert … select … where
    Ссылка

    #20302
    Mikhail
    Модератор

    … WHERE datetime = @datetime AND cnlnum = @cnlNum AND @val <= 0 ... ... WHERE NOT EXISTS (SELECT * FROM upsert) AND @val <= 0

    #20303
    Mikhail
    Модератор

    INSERT INTO cnldata1 (datetime, cnlnum, val, stat)
    SELECT @dateTime, @cnlNum, @val, @stat
    WHERE @val <= 0

Просмотр 15 сообщений - с 106 по 120 (из 137 всего)
  • Вы должны авторизироваться для ответа в этой теме.