Советы по программированию на LabVIEW

Простейшие вопросы в области инженерной разработки
rsv
user
user
Сообщения: 92
Зарегистрирован: 18 июл 2019, 13:53
Репутация: 0
Версия LabVIEW: 2018
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Как правильно наладить взаимодействие между VI, работающей на ПК и VI, реализованной в RealTime?
Сейчас у меня есть подключенный контроллер с кнопочками и реле. Создал VI с интерфейсом - считываются дискретные и аналоговые сигналы с помощью DAQmx.
Как вызвать VI, реализованную в RealTime? Визуальные элементы можно оставить или всё-таки всё управление должно быть реализовано в VI, работающих на ПК?
Чувствую, что вопрос глупый... :think:

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Artem.spb »

Нет глупых вопросов, если вы учитесь.
А ответ не такой простой, потому что вариантов масса. И в том числе ответ зависит от задачи.
Есть чисто :labview:-варианты. Shared variable, стримы.
можно даже с хоста запустить VI на RT-машине в режиме отладки, и вс будет отображаться.
Есть обычный TCP, где вы можете насочинять свой протокол взаимодействия.
Есть мудрёные варианты, типа поднять на RT Modbus-сервер, и с хоста запрашивать данные по модбасу. И .т.д.
В простейшем случае, если нужно "редко" получать какие-то значения, то Shared variable вполне достаточно

rsv
user
user
Сообщения: 92
Зарегистрирован: 18 июл 2019, 13:53
Репутация: 0
Версия LabVIEW: 2018
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Надо передать на контроллер уставки, с него получить готовность оборудования, запустить на выполнение и после завершения получить массив данных.
Думаю, Shared variable подойдёт. Начну с этого. Спасибо, Artem.spb.

Usss
assistant
assistant
Сообщения: 134
Зарегистрирован: 19 апр 2017, 23:06
Репутация: 0
Версия LabVIEW: 2018

Re: Советы по программированию на LabVIEW

Сообщение Usss »

Когда открываешь Overrid-ную vi, лабвью не хочет ее сразу открывать, а предлагает выбрать из списка потомков объекта. Это немножко бесит. Можно ли это отключить? Пока что я просто вставляю в блок диаграмму "Static vi reference" на нужную vi и при необходимости кликаю по ней.

rsv
user
user
Сообщения: 92
Зарегистрирован: 18 июл 2019, 13:53
Репутация: 0
Версия LabVIEW: 2018
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Не могу понять, где хранятся значения по умолчанию для контролов в приложенной VI?
Если заменить другими значениями и сохранить VI, то после открытия опять показывает прежние значения (в частности для Pulses per Revolution вылазит 24).
В свойствах значений по умолчанию не нашёл.
Подскажите, пожалуйста, а то напрягают такие явления - вроде должно быть просто, а разобраться не могу.
Вложения
Measure Angular Position.vi
(24.91 КБ) 73 скачивания
Панель&Диаграмма.JPG

Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3505
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Репутация: 0
Версия LabVIEW: 2.5 — 2020
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение dadreamer »

rsv, у меня нормально сохраняется по ПКМ -> Data Operations -> Make Current Value Default. :labview: 2019.

rsv
user
user
Сообщения: 92
Зарегистрирован: 18 июл 2019, 13:53
Репутация: 0
Версия LabVIEW: 2018
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Спасибо, dadreamer, дошло. Действительно, всё так и работает.
Не очень наглядно реализовано - что бы выяснить, какое значение по умолчанию прописано, надо изменить значение поля и нажать ПКМ -> Data Operations -> Reinitialize to Default Value.

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Artem.spb »

[quote=="rsv"]Не очень наглядно реализовано - что бы выяснить, какое значение по умолчанию прописано, надо изменить значение поля и нажать ПКМ -> Data Operations -> Reinitialize to Default Value.[/quote]

Гм. А как это было бы наглядно?

Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
professor
professor
Сообщения: 4929
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Репутация: 0
Версия LabVIEW: 2015, 2016
Откуда: СССР

Re: Советы по программированию на LabVIEW

Сообщение IvanLis »

[quote=="Artem.spb"]Гм. А как это было бы наглядно?[/quote]
Я бы, например для Numeric, сделал возможность просмотра и редактирования значения Default Value в свойствах, на вкладке Data Entry.

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Artem.spb »

[quote=="IvanLis"]Я бы, например для Numeric, сделал возможность просмотра и редактирования значения Default Value в свойствах, на вкладке Data Entry.[/quote]
ну может.
Я очень редко пользуюсь дефолтами, поэтому не сильно актуально

rsv
user
user
Сообщения: 92
Зарегистрирован: 18 июл 2019, 13:53
Репутация: 0
Версия LabVIEW: 2018
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение rsv »

[quote=="IvanLis"]Я бы, например для Numeric, сделал возможность просмотра и редактирования значения Default Value в свойствах, на вкладке Data Entry.[/quote]

Именно этого я и ожидал. Несколько раз к этой вкладке обращался - не мог поверить, что на ней нет значения по умолчанию :)

rsv
user
user
Сообщения: 92
Зарегистрирован: 18 июл 2019, 13:53
Репутация: 0
Версия LabVIEW: 2018
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Создание кластера из параметров SubVI
Есть код для инициализации узлов свойств (1-ый скрин). Он вызывается из одной VI несколько раз.
Напрашивается создать одну SubVI, передавать в неё параметры, а обратно возвращать ошибку. Если преобразовать код в SubVI (2-ой скрин), то получается не очень красиво.
Теперь уже напрашивается создать один параметр типа кластер, но что-то не доходит как это сделать.
Подскажите, пожалуйста, как в данном случае сделать кластер из имеющихся параметров. И вообще стоит это делать?
Вложения
Ини_1.JPG
Ини_2.JPG
Ини_VI.JPG

Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 516
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Репутация: 0
Версия LabVIEW: 2013
Откуда: Санкт-Петербург
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Vasiliy Baev »

rsv, для создания кластера ссылок на элементы FP используете JKI Right-Click Framework.

rsv
user
user
Сообщения: 92
Зарегистрирован: 18 июл 2019, 13:53
Репутация: 0
Версия LabVIEW: 2018
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Спасибо,
Vasiliy Baev
. Ради красоты разбираться с новым фреймворком? Пожалуй, пока, погожу.

Аватара пользователя
Vitekkz88

Activity Silver Автор
expert
expert
Сообщения: 1099
Зарегистрирован: 21 янв 2014, 15:45
Награды: 3
Репутация: 0
Версия LabVIEW: 12,13,14
Откуда: Томск
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Vitekkz88 »

Делайте вручную, это обычная практика.
Вложения
Ссылки.png
Инженер - это открыто светящийся интеллект, свободный и не обидный юмор, это легкость и широта мысли...Это воспитанность, тонкость вкусов, хорошая речь, плавно согласованная и без сорных словечек...
-А. И. Солженицын

Ответить

Вернуться в «Для чайников»