Всем привет,
возникла идея с последовательным обращением к ранее сохраненным библиотекам состояний передней панели, когда при обращении к примеру к Библиотеке 1.txt с со статусом True Controls 1,2 True, 3 и 4 False, при ссылке к другой библиотеке 2.txt, где 3 и 4 True, выполнится конкатенация состояний 3 и 4 как True.
Т.е.есть основная библиотека 0.txt которую я смогу сохранить после в.у. поочередных заполнений.
Не знаю, на сколько понятна моя формулировка алгоритма такого ускоренного "редактирования", если понадобится отвечу как то по другому. В проекте намного больше Controls которые в той или иной ситуации требуют от персонала изменений. В настоящий момент это делается вручную, и это отнимает много времени, одна библиотека содержит много различий по отношению к другим и есть состояния которые не везде совпадают.
Возможно есть иные методы быстрой реконфигурации состояний панели по заранее созданным библиотекам, приветствуются любые альтернативные идеи.
Прикрепляю сам метод для ясности, который на данный момент рабочий.
Я очень сомневаюсь что этот метод применим в моей ситуации и понимаю почему.
Библиотеки состояний Controls фронт паннели
-
Artem.spb
- professor

- Сообщения: 3662
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 64 раза
- Поблагодарили: 201 раз
- Контактная информация:
Re: Библиотеки состояний Controls фронт паннели
Я ничего не понял.Select писал(а): 21 сен 2025, 23:48 Не знаю, на сколько понятна моя формулировка алгоритма такого ускоренного "редактирования",
Метод странный. Зачем сохранять каждое значение по два раза?Прикрепляю сам метод для ясности, который на данный момент рабочий.
Я очень сомневаюсь что этот метод применим в моей ситуации и понимаю почему.
А по вопросу, из того, что понял только необходимость сохранять состояния, так пользователь настраивает конфигурацию, выбирает куда её сохранить (имя файла), потом так же по имени выбирает, что загрузить.
Что за конкатенация нужна, не понятно.
- Select
- professional

- Сообщения: 319
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 4 раза
Re: Библиотеки состояний Controls фронт паннели
Понял, попробую так:
Сейчас каждая сохранённая библиотека (например, 1.txt, 2.txt) представляет собой полный снимок всех групп Controls при том что их массив отличается друг от друга.
При загрузке библиотека через цикл Ctrl Val.Set полностью перезаписывает состояния передней панели.
Из-за этого невозможно использовать несколько библиотек последовательно: каждая новая библиотека заменяет всё состояние предыдущей.
Что требуется:
Нужна возможность загружать не только “полный снимок”, но и частично обновлять состояние панели по определённым группам Controls (в зависимости от назначения библиотеки).
Тогда можно будет взять базовую конфигурацию (например, 0.txt) и пошагово накладывать на неё изменения из других библиотек.
Сейчас каждая сохранённая библиотека (например, 1.txt, 2.txt) представляет собой полный снимок всех групп Controls при том что их массив отличается друг от друга.
При загрузке библиотека через цикл Ctrl Val.Set полностью перезаписывает состояния передней панели.
Из-за этого невозможно использовать несколько библиотек последовательно: каждая новая библиотека заменяет всё состояние предыдущей.
Что требуется:
Нужна возможность загружать не только “полный снимок”, но и частично обновлять состояние панели по определённым группам Controls (в зависимости от назначения библиотеки).
Тогда можно будет взять базовую конфигурацию (например, 0.txt) и пошагово накладывать на неё изменения из других библиотек.
второй Invoke Node, если Вы про это, он особой погоды не строит, я с ним экспериментировал для фильтрации и добавления состояний из других источников, оставил пока так, но согласен, он пока что лишний.... Зачем сохранять каждое значение по два раза?
LabView 14,18
-
IvanLis
- guru

- Сообщения: 5689
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 35 раз
- Поблагодарили: 128 раз
Re: Библиотеки состояний Controls фронт паннели
Ну во первых, хочу предупредить, что даже bin файл от версии LV зависит, и например созданный в 2014 скорее всего не откроется в 2019.Select писал(а): 22 сен 2025, 09:24 Нужна возможность загружать не только “полный снимок”, но и частично обновлять состояние панели по определённым группам Controls (в зависимости от назначения библиотеки).
Тогда можно будет взять базовую конфигурацию (например, 0.txt) и пошагово накладывать на неё изменения из других библиотек.
Во вторых используйте нормальные "человеко-читаемые" конфиги, можно то-то XML.
Но XML как и bin привязан к структуре.
Я бы рекомендовал не "прыгать на граблях", а использовать готовые и проверенные решения.
Типа такого: Тут и удалить можно из конфиг файла ненужные параметры и подправить их и нет жесткой связи Panel <-> Config.
Все определяется именами контролов.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение Картинку или Файл
Как добавить в сообщение Видео
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение Картинку или Файл
Как добавить в сообщение Видео
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
Artem.spb
- professor

- Сообщения: 3662
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 64 раза
- Поблагодарили: 201 раз
- Контактная информация:
Re: Библиотеки состояний Controls фронт паннели
Дополню совет Ивана. Я не встречал подобных решений и вряд ли они существуют, потому что довольно специфичные. Обычно один раз создают варианты настроек, и потом их подгружают.Select писал(а): 22 сен 2025, 09:24 Нужна возможность загружать не только “полный снимок”, но и частично обновлять состояние панели по определённым группам Controls (в зависимости от назначения библиотеки).
Тогда можно будет взять базовую конфигурацию (например, 0.txt) и пошагово накладывать на неё изменения из других библиотек.
Если уж хочется поизвращаться, то придётся городить своё решение: диалог, где пользователь отмечает, какие именно значения использовать. Но этот диалог может занять больше времени, чем простой ручной ввод.
- Select
- professional

- Сообщения: 319
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 4 раза
Re: Библиотеки состояний Controls фронт паннели
Идея с кластером понятна, но она не решает проблему группового наполнения из таких кластеров, как я понял, мне под каждый такой кластер нужна отдельная библиотека ini т.к. вошедшая его группа контролов, является всeго лишь частью оркестрации сценария, в который входят и другие аналогичные кластеры.IvanLis писал(а): 22 сен 2025, 21:27 Тут и удалить можно из конфиг файла ненужные параметры и подправить их и нет жесткой связи Panel <-> Config.
Все определяется именами контролов.
Для понимания приведу пример:
Клиент настраивает управление гантри XYZ состоящий 3 лиенйных актуаторов, когда на драйверы со со стороны I/O в одном случае подаются/считываются от датчиков одни группы состояний каналов, а в другом случае другие состояния в зависимости от всех возможных вариаций перемещения гантри в пространстве. Таким образом моторы XY могут вообще не приводиться в движение а Z из определенной точки останова, должен быть запущен для перехода в нулевую точку и т.д. и т.п. Т.е. невозможно на уровне сохраненных значений для 1-го кластера автоматизировать ввод полноого сервиса, который является частью в оркестрации контейнеров во всем сценарии с различными задачами.
В данном случае с Вашей идеей я да, могу наполнить кластер для подачи питания, запуска PWM генератора и активации датчика положения и еще пару параметров по работе с коммуникациями, где понадобится править номера I/O каналов. В случае с XY это еще 2 кластера, в которых присутствуют все контролы для каждого привода. В общем есть некоторое упрощение, пока еще не понимаю на сколько, т.к. нет той возможности о которой я говорил изначально где я могу построить полный цикл для определенной группы железа и сохранить его для применения в дальнейших оркестрациях, а если к примеру под весь гантри строить отдельную библиотеку, на клиента налагается дополнительный слой инструкции в которой надо понимать что подгружать для его работы. В общем есть над чем покурить. В любом случае всех благодарю за ценные советы.
LabView 14,18
-
IvanLis
- guru

- Сообщения: 5689
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 35 раз
- Поблагодарили: 128 раз
Re: Библиотеки состояний Controls фронт паннели
На мой взгляд, Вы значительно усложняете задачу, и не только себе.
Никто не будет "курить" документацию сутками, что бы составить необходимую конфигурацию из возможных 10! комбинаций.
Вы должны упрощать жизнь пользователю, а не усложнять ее. Не забываем:
1. бритва Оккама
2. парадокс выбора
Дайте пользователю 30 самых распространенных комбинаций, а остальное пусть сам себе подправит
Ну либо помогите ему самому синтезировать настройку за 5..10 шагов путем выбора нужных вариантов и установки требуемых значений.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение Картинку или Файл
Как добавить в сообщение Видео
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение Картинку или Файл
Как добавить в сообщение Видео
Конвертация / версий (форматов) VI
Как правильно задать вопрос...