Доброго времени суток!
Сразу к делу: Есть прибор, внутри которого есть несколько однотипных подприборов, лицевые панели которых можно открывать по запросу. Эти подприборы принимают пакеты данных с порта. Мне нужно чтобы например изменение состояния индикатора в подприборе отображалось в основном Vi. ( или например если значение, которое меряется подприбором превысило допустимый уровень, то в основном приборе загорался индикатор).
подскажите пожалуйста как мне быть!
Как вытащить значение из Sub VI
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Как вытащить значение из Sub VI
Например вынести цикл из подприбора в главный прибор.
- Вложения
-
- MainSub.png (6.06 КБ) 2862 просмотра
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Как вытащить значение из Sub VI
Догда запустить подприбор параллельным потоком и передавать данные например через глобальные переменные или Queue/Notifier.
-
- user
- Сообщения: 84
- Зарегистрирован: 23 мар 2010, 10:50
- Версия LabVIEW: 2009
- Откуда: Казань
- Контактная информация:
Re: Как вытащить значение из Sub VI
а по подробнее можешь рассказать..? я никогда такого не делал....
-
Alex89
- adviser
- Сообщения: 202
- Зарегистрирован: 04 апр 2010, 18:20
- Награды: 1
- Версия LabVIEW: 2009 SP1
- Откуда: Санкт-Петербург
Re: Как вытащить значение из Sub VI
Я же тебе уже отвечал по поводу global...
например, "LabVIEW для всех." (Трэвис Д., Кринг Д.), в ней очень доступно описаны все эти вещи. В интернете ее можно найти в электронном виде.
По поводу Queue/Notifier, тоже самое - используй NI Example Finder, посмотри примеры: Queue Basics и Queue Multyplexer. Если и по примерам не понятно, то возьми книжку по ,Зайди в NI Example Finder. Набери в строке поиcка: "global". Найди 2-а 's : Display Numbers и Generate Numbers. Эти 's обмениваются данными через глобальные переменные. Посмотри как они работают, там много комментариев, все понятно. Точно так же используй global и в subVI, главное следи, что бы чтение из global не опережало запись в нее.
например, "LabVIEW для всех." (Трэвис Д., Кринг Д.), в ней очень доступно описаны все эти вещи. В интернете ее можно найти в электронном виде.
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Как вытащить значение из Sub VI
Вот, на первом скрине MainVI, на втором SubVI.
- Вложения
-
- Main.png (7.74 КБ) 2851 просмотр
-
- Sub.png (7.12 КБ) 2851 просмотр