Наилучший способ передачи множества параметров в SubVI

Обсуждение, связанное с разработкой ПО верхнего уровня
alex3f
beginner
beginner
Сообщения: 26
Зарегистрирован: 23 авг 2016, 09:16
Версия LabVIEW: 2016
Контактная информация:

Re: Наилучший способ передачи множества параметров в SubVI

Сообщение alex3f »

Тоже использовал кластеры для ссылок и параметров. Но, примерно, 2 года назад начал присматриваться к массивам. Как и писал dadreamer, при инициализации программы рекурсивно обходится панель основного VI и извлекаются ссылки на контролы/индикаторы. Для этого можно использовать TRef Get All FP References.vi или другие примеры (суть та же). Дальше ссылки идут в один или несколько (например, управление и результаты) массивов. Задачу поиска нужного элемента в массиве я для себя решил поддержкой Enum TypeDef. Поддерживать подобную конструкцию легче (по моему мнению). Основной Vi получается компактным.
Удобство использования меня устроило и позже я применил подобный подход (массив + Enum TypeDef) к пределам измеряемых параметров (80 параметров, и, соответственно, для каждого верхний и нижний предел). Кластер с входными параметрами для SubVI стал намного более компактным.
Вложения
Vi.PNG
Аватара пользователя
Konstantin Sumenko

Activity Bronze
expert
expert
Сообщения: 1439
Зарегистрирован: 17 июл 2008, 12:20
Награды: 2
Версия LabVIEW: 2010
Откуда: Moscow
Поблагодарили: 1 раз
Контактная информация:

Re: Наилучший способ передачи множества параметров в SubVI

Сообщение Konstantin Sumenko »

Сравнительно давно я использую подход с Variant и атрибутами, в 2016 версии LV стало еще удобнее с добавлением в Inplace структуру режима Get/Replace attribute. Подробнее про техники:
https://forums.ni.com/t5/LabVIEW-Develo ... -p/3478922
ftp://ftp.ni.com/pub/events/webcasts/va ... _table.pdf

Само собой где-то удобнее и правильнее использовать кластер или простой массив для коллекций.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Лицевая панель»