Стартовая страница › Форумы › Разработка и интеграция › Битовые маски Архивов и Событий V6
- В этой теме 9 ответов, 2 участника, последнее обновление 2 года назад сделано Mikhail.
-
АвторСообщения
-
18.04.2022 в 13:54 #23109manjey73Участник
Михаил, объясните смысл битовых масок Архивов и Событий применительно к управлению из Драйвера.
Особенно интересует Custome archive
Как из драйвера создать и записывать в свободный архив? это вообще возможно?
18.04.2022 в 13:59 #23110manjey73УчастникНу и собственно, а где текстовые базы, о которых было столько слов?
18.04.2022 в 14:55 #23113MikhailМодераторАрхив нужно прописать в настройках Сервера, а также в таблице Архивы базы конфигурации.
В драйвере для архивных срезов можно указать маску архивов, в которую записывать конкретный срез. Если не указывать, то данные попадут в те архивы, которые заданы для каналов.
Ну и собственно, а где текстовые базы, о которых было столько слов?
Объекты, устройства и каналы имеют свои коды. Таким образом, любой канал можно идентифицировать по коду объекта, устройства и тега.
Пример:
ParentObjectCode.ChildObjectCode.DeviceCode.TagCodeЧтобы эту возможность использовать на практике, нужно разработать модуль REST API или gRPC API, который будет поддерживать обращение к данным по кодам, а не только по номерам каналов.
Также привязка по кодам потенциально возможна для мнемосхем, но детали пока не определены.
18.04.2022 в 15:05 #23114manjey73УчастникПолучается маска доступна только на 64-ре типа архивов, 10-ть из них уже заняты…
Странный подход однако, почему опять же не применять Код архива?
19.04.2022 в 14:08 #23135MikhailМодераторЗачем Вам столько архивов?
Использование маски связано с оптимизацией передаваемых данных и хранения настроек.19.04.2022 в 14:47 #23136manjey73УчастникСкажем так, я предполагал, что драйвер, указав тип архива для переменной(набора переменных) даст понять серверу о создании архива для этого набора данных в рамках только одного взятого драйвера.
А сейчас непонятно, что вообще изменилось в версии 6 по данному поводу.Вот опять же, тип данных строка, длина больше 8 байт. Постоянное сохранение не требуется ВООБЩЕ, но где-то ее надо хранить и при изменении сохранять.
Аналогично тип данных int, постоянного сохранения не требуется.Что в данном плане дает версия 6 по отношению к версии 5 ? Кроме возможности уменьшить количество записей, направив в базу с часовым или дневным сохранением ?
19.04.2022 в 14:51 #23137manjey73УчастникВозможно создать цикличный архив для переменной на 10 значений с фиксацией времени изменения и контролем оператора (кода оператора) кто ее изменил ?
20.04.2022 в 15:02 #23159MikhailМодераторя предполагал, что драйвер, указав тип архива для переменной(набора переменных) даст понять серверу о создании архива для этого набора данных в рамках только одного взятого драйвера.
Архив это «тяжелая» структура данных, которая не может быть просто создана в любой момент из драйвера. Архивы нужно прописать и создать заранее.
Вот опять же, тип данных строка, длина больше 8 байт. Постоянное сохранение не требуется ВООБЩЕ, но где-то ее надо хранить и при изменении сохранять.
Сохраняйте в архив текущих данных с помощью соответствующей маски архивов канала.
Возможно создать цикличный архив для переменной на 10 значений с фиксацией времени изменения и контролем оператора (кода оператора) кто ее изменил ?
Сейчас возможно создать архив с заданным периодом хранения. Время изменения и оператор сохраняются в архив событий, если для каналов поставить флаг записи команд.
Если нужен архив на заданное количество значений с хранением времени изменения и оператора, то его можно разработать в виде модуля.
20.04.2022 в 15:25 #23161manjey73УчастникАрхив это «тяжелая» структура данных, которая не может быть просто создана в любой момент из драйвера. Архивы нужно прописать и создать заранее.
Но ведь сам Администратор создает ведь Архивы? Или его модуль ModArcBasic если это делает он?
Текущие данные предполагают постоянного чтения из прибора или архив текущих данных можно создать новый с такими же условиями и сохранить туда однократно? Хотя само понятие Текущий предполагает что он будет изменяться постоянно и на завтра что с ним будет?
Если нужен архив на заданное количество значений с хранением времени изменения и оператора, то его можно разработать в виде модуля.
Вот это уже интереснее, примеры работы с сервером или через сервер для модуля где смотреть? в Базовом варианте Архивов ?
20.04.2022 в 18:33 #23170MikhailМодераторВ проекте только декларируются архивы. В рантайме они создаются Сервером, используя модуль, в частности ModArcBasic.
Текущий архив пишется в файл или БД и при перезапуске Сервера восстанавливается.
Вот это уже интереснее, примеры работы с сервером или через сервер для модуля где смотреть? в Базовом варианте Архивов ?
Да.
Но можно попробовать проще. Используйте стандартный текущий архив. По команде ТУ, которая обрабатывается модулем, записывайте в него новое значение, а также куда-то в свой файл или базу пишите историю изменений. -
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.