Список NiScope устройств

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы

Список NiScope устройств

Postby Stkn on 21 Jun 2018, 16:45

Подскажите, можно ли получить программно список NiScope устройств.
Ну или как сделать так, чтобы выбиралось 1е доступное устройсво
Attachments
Безымянный.png
Безымянный.png (3.38 KiB) Viewed 1201 times
Stkn
assistant
assistant
 
Posts: 123
Joined: 25 Jan 2009, 11:08
LabVIEW Version: 2014
Karma: 10
CLAD

Re: Список NiScope устройств

Postby dadreamer on 21 Jun 2018, 18:11

User avatar
dadreamer
professor
professor
 
Posts: 3150
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 801
I/O VIP vision internet

Re: Список NiScope устройств

Postby Blackman on 21 Jun 2018, 19:55

Для любого IO name Control есть приватное свойство DropDownList [] - массив строк ресурсов отображаемых в контроле. Содержанием списка можно управлять при помощи свойств фильтра контрола. Работает в обоих системах.
Blackman
leader
leader
 
Posts: 798
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 234
VIP

Re: Список NiScope устройств

Postby Stkn on 22 Jun 2018, 09:24

dadreamer wrote:А это не подходит?
Programmatically Retrieving A VISA Resource Name in LabVIEW

Сходу пока не получается, может что-то не так делаю. Да и поиск довольно долгий.

Blackman wrote:Для любого IO name Control есть приватное свойство DropDownList [] - массив строк ресурсов отображаемых в контроле. Содержанием списка можно управлять при помощи свойств фильтра контрола. Работает в обоих системах.

Похоже на то, что нужно. А как получить доступ к этим приватным свойствам?
Stkn
assistant
assistant
 
Posts: 123
Joined: 25 Jan 2009, 11:08
LabVIEW Version: 2014
Karma: 10
CLAD

Re: Список NiScope устройств

Postby dadreamer on 22 Jun 2018, 10:30

Stkn wrote:Сходу пока не получается, может что-то не так делаю. Да и поиск довольно долгий.

Поиск да, иногда может затянуться. А что не получается? VISA Find Resource выдаёт вам список доступных устройств?
Stkn wrote:А как получить доступ к этим приватным свойствам?

Пропишите SuperSecretPrivateSpecialStuff=True в LabVIEW.ini, перезапустите :labview: , если он открыт.
User avatar
dadreamer
professor
professor
 
Posts: 3150
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 801
I/O VIP vision internet

Re: Список NiScope устройств

Postby Blackman on 22 Jun 2018, 11:32

Для версии 2014 :
Команда меню Tools -> Options... -> Категория VI Server -> поставить "галки" в поле VI Scripting
Перезапуск не нужен.
Upd: Включение скриптинга не активирует SuperSecretPrivateSpecialStuff ((. Надо редактировать ini файл.
Пример применения
Attachments
VISA_Control DropDown List.png
Blackman
leader
leader
 
Posts: 798
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 234
VIP

Re: Список NiScope устройств

Postby Kosist on 22 Jun 2018, 15:02

А это свойство также работает в Run-Time engine? Т.к. многие из приватный свойств в исполняемом приложении недоступны...
Мы делили апельсин - много наших полегло...
User avatar
Kosist
leader
leader
 
Posts: 899
Joined: 21 Feb 2011, 23:44
Medals: 2
Activity (1) Gold (1)
LabVIEW Version: 2013-2017
Karma: 253
CLAD I/O VIP students

Re: Список NiScope устройств

Postby Stkn on 22 Jun 2018, 15:54

dadreamer wrote:А что не получается? VISA Find Resource выдаёт вам список доступных устройств?

Список выдаёт, но niScope устройств в нём нет

Blackman wrote:Пример применения

Спасибо, всё получилось

Kosist wrote:А это свойство также работает в Run-Time engine? Т.к. многие из приватный свойств в исполняемом приложении недоступны...

В рантайме у меня почему-то работает не при каждом запуске. Выкрутился, засунув это в цикл for с остановкой, когда массив стал непустым
Stkn
assistant
assistant
 
Posts: 123
Joined: 25 Jan 2009, 11:08
LabVIEW Version: 2014
Karma: 10
CLAD

Re: Список NiScope устройств

Postby IvanLis on 22 Jun 2018, 18:17

Stkn wrote:
dadreamer wrote:В рантайме у меня почему-то работает не при каждом запуске. Выкрутился, засунув это в цикл for с остановкой, когда массив стал непустым

На сколько мне известно, никто и не гарантирует работоспособность функций скриптинга в EXE, почитайте например: https://forums.ni.com/t5/LabVIEW-APIs-D ... -p/3416747
User avatar
IvanLis
professor
professor
 
Posts: 4636
Joined: 02 Dec 2009, 17:44
Location: СССР
Medals: 7
Activity (2) Professionalism (1) Tutorials (1) Gold (1) Man of the year 2012 (1)
Автор (1)
LabVIEW Version: 2010
Karma: 728
hardware VIP bloggers teachers

Re: Список NiScope устройств

Postby dadreamer on 22 Jun 2018, 19:03

IvanLis, ну, это не совсем скриптинг, а приватное свойство, которое не манипулирует элементами среды и не требует (пере)компиляции :vi: , а только вытаскивает нужные данные, как в общем-то большая часть свойств делает. Приватное оттого, что NI толком не протестировали его (а может, и вовсе не тестировали), и пользователю придётся использовать его "как есть", без возможности обращения в тех. поддержку, и приняв все возможные риски (например, может упасть :labview: и вместе с этим порушится структура открытых :vi: ). Иногда R&D отписывают на Лаве о тех или иных свойствах, почему их лучше не использовать и в чём ограничения/"косяки" реализации. Некоторые свойства довольно-таки стабильны, некоторые - очень нет. Какие-то - коричневые просто из-за отсутствия кросс-платформенности.

А вот эта приведённая тема относится к тем временам, когда скриптинг ещё не был официальной частью :labview: , а был "секретной" фичей, включаемой разным "шаманством", наподобие того, что приходится в *.ini файл прописывать. Для Property/Invoke Nodes везде явно прописано, будет работать в EXE или нет. Некоторое количество голубых блоков всё же вполне себе работает в EXE тоже. Для встроенных не прописано, но легко проверяется.

Почему не всегда срабатывает DropDownList, может, оттого, что список должен наполниться именами, для этого необходимо однократно вызвать внутренний аналог VISA Find Resource. Пока список не заполнился, он пустой, что и возвращается. Если стрелку на VISA Resource Name нажать, то тоже не мгновенно список вылазит.
Last edited by dadreamer on 22 Jun 2018, 19:23, edited 1 time in total.
User avatar
dadreamer
professor
professor
 
Posts: 3150
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 801
I/O VIP vision internet

Re: Список NiScope устройств

Postby Blackman on 22 Jun 2018, 19:17

Перед первым вызовом проперти надо прочитать один раз IO Name control (например в свою локальную переменную). Это гарантирует обновление списка. У меня эта проперть в рантайме работает как часы))
Blackman
leader
leader
 
Posts: 798
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 234
VIP

Re: Список NiScope устройств

Postby Artem.spb on 22 Jun 2018, 21:23

Blackman wrote:У меня эта проперть в рантайме работает как часы))

всегда в таких случаях хочется спросить: время показывает? :)
Artem.spb
expert
expert
 
Posts: 1419
Joined: 31 Jul 2011, 23:05
Medals: 2
Activity (1) Автор (1)
LabVIEW Version: 12,14,15
Karma: 246
CLD hardware I/O VIP freelance

Re: Список NiScope устройств

Postby Stkn on 23 Jun 2018, 10:56

Blackman wrote:Перед первым вызовом проперти надо прочитать один раз IO Name control (например в свою локальную переменную). Это гарантирует обновление списка. У меня эта проперть в рантайме работает как часы))

Вот именно с niScope у меня работает с перебоями. Проверил с DAQmx устройствами, там всё отлично.
Stkn
assistant
assistant
 
Posts: 123
Joined: 25 Jan 2009, 11:08
LabVIEW Version: 2014
Karma: 10
CLAD


Return to Коммуникация с приборами

Who is online

Users browsing this forum: No registered users and 6 guests

cron