Обмен данными между ВП
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Обмен данными между ВП
Всем хорошего настроения!
У меня усть две , при этом они обмениваются данными. Но это реализовано через глобальные переменные. Как реализовать обмен данными каким-либо другим, более быстрым и правильным, способом?
У меня усть две , при этом они обмениваются данными. Но это реализовано через глобальные переменные. Как реализовать обмен данными каким-либо другим, более быстрым и правильным, способом?
-
- leader
- Сообщения: 548
- Зарегистрирован: 20 авг 2009, 17:58
- Награды: 2
- Версия LabVIEW: 2011
- Контактная информация:
Re: Обмен данными между ВП
через Queue или через Functional Global
We live in a graphical world.
Why not program in one?
Why not program in one?
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Обмен данными между ВП
Я пробовал сделать через очереди, но реализовать пока не получается. Нельзя ли помочь с примерчиком?Eugene писал(а):через Queue или через Functional Global
Спс
-
Pavel Krivozubov
- professor
- Сообщения: 4422
- Зарегистрирован: 07 фев 2008, 16:39
- Награды: 3
- Версия LabVIEW: 7.0 - 2013
- Откуда: г. Электросталь
- Благодарил (а): 24 раза
- Поблагодарили: 9 раз
- Контактная информация:
Re: Обмен данными между ВП
По моему Notifers наиболее просты для освоения и не менее функциональны чем очереди. Примеры см. в Example Finder на сабжевое слово.
Правила форума
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Обмен данными между ВП
Indey, спасибо! Получилось, все работает. Пример называется - "Notifier Demultiplexer.vi"Indey писал(а):По моему Notifers наиболее просты для освоения и не менее функциональны чем очереди. Примеры см. в Example Finder на сабжевое слово.
Теперь можно отказаться от локальных и глобальных переменных
-
Pavel Krivozubov
- professor
- Сообщения: 4422
- Зарегистрирован: 07 фев 2008, 16:39
- Награды: 3
- Версия LabVIEW: 7.0 - 2013
- Откуда: г. Электросталь
- Благодарил (а): 24 раза
- Поблагодарили: 9 раз
- Контактная информация:
Re: Обмен данными между ВП
Давно пора!student писал(а): Теперь можно отказаться от локальных и глобальных переменных
Вот кстати для общего развития ссылка на один полезный документ, я его приводил уже в соседней теме, думаю и здесь будет не лишним:
http://www.automationlabs.ru/forum/show ... 2%E8%EB%E0
Правила форума
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
-
grjgrj
- professional
- Сообщения: 300
- Зарегистрирован: 18 фев 2009, 14:32
- Награды: 2
- Версия LabVIEW: 8.5-2011
- Откуда: Караганда
- Контактная информация:
Re: Обмен данными между ВП
А мне кажется Notifers тоже опасно использовать как и глобальные переменные, можно же переписать значения, или я ошибаюсь? С Queue все "безопаснее" у них буфер есть.Indey писал(а):По моему Notifers наиболее просты для освоения и не менее функциональны чем очереди. Примеры см. в Example Finder на сабжевое слово.
-
Pavel Krivozubov
- professor
- Сообщения: 4422
- Зарегистрирован: 07 фев 2008, 16:39
- Награды: 3
- Версия LabVIEW: 7.0 - 2013
- Откуда: г. Электросталь
- Благодарил (а): 24 раза
- Поблагодарили: 9 раз
- Контактная информация:
Re: Обмен данными между ВП
Хм, никогда с таким не сталкивался. Может быть тут дело в неправильной организации программы?grjgrj писал(а):А мне кажется Notifers тоже опасно использовать как и глобальные переменные, можно же переписать значения, или я ошибаюсь?Indey писал(а):По моему Notifers наиболее просты для освоения и не менее функциональны чем очереди. Примеры см. в Example Finder на сабжевое слово.
Правила форума
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
Developlabs - IT услуги - ждём Ваших заказов на написание программ
Новостной канал о LabVIEW и технологиях NI на Facebook
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Обмен данными между ВП
В случае если получатель на некоторое время загружен другой работой мы имеем потерю данных. В случае с очередями этой проблемы нет.
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Обмен данными между ВП
eg, и вам спасибо за ответы.
Сегодня переделал свою программу кардинально, в итоге осталась всего одна локальная переменная, но она нужна))
Хочу показать что получилось.
Сегодня переделал свою программу кардинально, в итоге осталась всего одна локальная переменная, но она нужна))
Хочу показать что получилось.
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Обмен данными между ВП
Хотелось бы задать еще один вопрос в этой теме.
Если у в программе есть Control (у меня Booleon), это значит, что его значение можно изменить только с помощью локальной переменной или есть какой-либо другой способ программно задавать его значения?
Спс
Если у в программе есть Control (у меня Booleon), это значит, что его значение можно изменить только с помощью локальной переменной или есть какой-либо другой способ программно задавать его значения?
Спс
-
Aleksey Feoktistov
- leader
- Сообщения: 898
- Зарегистрирован: 20 янв 2009, 00:15
- Награды: 6
- Версия LabVIEW: 2015
- Откуда: Tyumen
- Поблагодарили: 2 раза
- Контактная информация:
Re: Обмен данными между ВП
Alex89, спасибо за ответ.
Дело в том, что я ищу способ улучшить стиль программирования.
Property Node (Value) лучше локальных переменных? Если да, то почему?
Дело в том, что я ищу способ улучшить стиль программирования.
Property Node (Value) лучше локальных переменных? Если да, то почему?
-
Alex89
- adviser
- Сообщения: 202
- Зарегистрирован: 04 апр 2010, 18:20
- Награды: 1
- Версия LabVIEW: 2009 SP1
- Откуда: Санкт-Петербург
Re: Обмен данными между ВП
Лучше или нет, это сложный вопрос. Все зависит от задачи. Многие источники рекомендуют избегать использование большого количества локальных и глобальных переменных. Возможно это связано с созданием копий данных при чтении. Однако, локальные переменные будут работать быстрее чем Property Node и рекомендуют их использовать при инициализации. Что касается стиля программирования, мне очень понравилась книга "LabVIEW: Стиль Программирования" (Питер Блюм). Советую почитать!