USB3000 & LabView

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

Re: USB3000 & LabView

Postby dadreamer on 15 Feb 2019, 22:18

Agat wrote:Прошелся в ReadData0 по шагам - ошибка возникает в блоке StopRead...

Как-то уж слишком мало информации выдаёт 10-ка, даже имя сбойного модуля не написано. Два варианта: косяк в обёртках/dll или косяк в драйвере. Ошибка возникает сразу на первом блоке StopRead.vi? (5-й по счёту, идёт после SetInputPars.vi). В самом конце программы есть аналогичный StopRead.vi, стоит предпоследним, дальше ReleaseInstance.vi.
- В 32-битном :labview: на 32-битных библиотеках описанная ошибка возникает?
- Что выводится в консоль при запуске примера ReadData0 на отладочных (DBG) библиотеках? Скиньте, плиз, скрин или текст, если успеете скопировать (Пометить/Ctrl+M -> Enter).
- Покажите ещё панель ReadData0 целиком; желательно ещё глянуть панель StopRead после выполнения, чтобы проверить содержимое кластера ViStatusOut.
User avatar
dadreamer
professor
professor
 
Posts: 3260
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 816
I/O VIP vision internet

Re: USB3000 & LabView

Postby Agat on 18 Feb 2019, 07:52

dadreamer wrote:
Agat wrote:Прошелся в ReadData0 по шагам - ошибка возникает в блоке StopRead...

Как-то уж слишком мало информации выдаёт 10-ка, даже имя сбойного модуля не написано. Два варианта: косяк в обёртках/dll или косяк в драйвере. Ошибка возникает сразу на первом блоке StopRead.vi? (5-й по счёту, идёт после SetInputPars.vi). В самом конце программы есть аналогичный StopRead.vi, стоит предпоследним, дальше ReleaseInstance.vi.
- В 32-битном :labview: на 32-битных библиотеках описанная ошибка возникает?
- Что выводится в консоль при запуске примера ReadData0 на отладочных (DBG) библиотеках? Скиньте, плиз, скрин или текст, если успеете скопировать (Пометить/Ctrl+M -> Enter).
- Покажите ещё панель ReadData0 целиком; желательно ещё глянуть панель StopRead после выполнения, чтобы проверить содержимое кластера ViStatusOut.


Да, ошибка в первом блоке StopRead.
В 32-битном labview ошибок нет, но результата выполнения тоже нет (
20190218_105552.JPG

Как посмотреть, что выводится в консоль?
ReadData0 целиком
Панель ReadData0.JPG

StopRead после выполнения не глянуть ) в момент ее выполнения вылетает синий экран..
Панель StopRead.JPG
следующий шаг будет синий экран..
Agat
beginner
beginner
 
Posts: 27
Joined: 16 Jan 2019, 09:22
LabVIEW Version: 18
Karma: 0

Re: USB3000 & LabView

Postby dadreamer on 18 Feb 2019, 08:55

Agat wrote:В 32-битном labview ошибок нет, но результата выполнения тоже нет (

InitModule не проходит. Видите, лампочка напротив не горит? Возможно, опять CreateFile не выполняется. А 32-битные DLL'ки вы брали родные или из моего поста в этой теме? Если родные, то они не заработают на ОСях начиная с Win 8 и выше.
Agat wrote:Как посмотреть, что выводится в консоль?

Замените Rtusbapi.dll и wrRtusbapi.dll на Debug-версии и запустите пример ReadData0.vi. Версии выложены на первой странице этой темы с пометкой DBG. При открытии :vi: отобразится окно консоли, куда будет выводиться информация о вызываемых функциях. Окно не закрывайте, :labview: закроет его сам, когда вы закроете основной :vi: . Мне нужен текст из консоли после выполнения ReadData0 (до StopRead, понятное дело). Как скопировать - ПКМ на заголовке окна -> Изменить -> Пометить -> выделяете мышью текст -> нажимаете Enter -> текст скопирован в буфер обмена.
2019-02-18_10-18-48.jpg

Agat wrote:ReadData0 целиком

Забыл уточнить - после выполнения (или точнее, в процессе выполнения), пока система не ушла в БСОД. Как обычно, на StopRead прервите выполнение и заскриньте панель ReadData0.

Более отвлечённый вопрос - а на младших ОС (7 или XP) удалось получить какой-нибудь вменяемый ответ? Могли бы вы подставить 32-битные библиотеки из этой темы на 7/XP и проверить?.. Чтобы определиться, что не так всё-таки с новым вариантом библиотек.
User avatar
dadreamer
professor
professor
 
Posts: 3260
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 816
I/O VIP vision internet

Re: USB3000 & LabView

Postby Agat on 18 Feb 2019, 10:45

dadreamer wrote: А 32-битные DLL'ки вы брали родные или из моего поста в этой теме?

DLL'ки ваши.
dadreamer wrote:Замените Rtusbapi.dll и wrRtusbapi.dll на Debug-версии и запустите пример ReadData0.vi. Версии выложены на первой странице этой темы с пометкой DBG. При открытии :vi: отобразится окно консоли, куда будет выводиться информация о вызываемых функциях.

консоль.txt
(15.38 KiB) Downloaded 17 times


dadreamer wrote:Забыл уточнить - после выполнения (или точнее, в процессе выполнения), пока система не ушла в БСОД. Как обычно, на StopRead прервите выполнение и заскриньте панель ReadData0.

Панель.jpg

dadreamer wrote:Более отвлечённый вопрос - а на младших ОС (7 или XP) удалось получить какой-нибудь вменяемый ответ? Могли бы вы подставить 32-битные библиотеки из этой темы на 7/XP и проверить?.. Чтобы определиться, что не так всё-таки с новым вариантом библиотек.

На ХР завтра попробую.
Agat
beginner
beginner
 
Posts: 27
Joined: 16 Jan 2019, 09:22
LabVIEW Version: 18
Karma: 0

Re: USB3000 & LabView

Postby dadreamer on 18 Feb 2019, 11:04

Agat, по консоли и скриншотам - ошибок никаких нет. Теперь надо как-то поймать вывод после захода в StopRead, т.е. всё, что будет написано после строки IDevPtr->SET_INPUT_PARS returned TRUE (OK). Полагаю, есть небольшое время между вызовом этого блока и крахом системы?.. Можно успеть сфоткать на фотоаппарат, при желании. Или нет?
По варианту 32 бит - нужно так же читать отладку, без неё не могу больше ничего сказать. Вывод там должен быть не такой большой, т.к. до InitModule дело не доходит.
User avatar
dadreamer
professor
professor
 
Posts: 3260
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 816
I/O VIP vision internet

Re: USB3000 & LabView

Postby Agat on 20 Feb 2019, 07:37

dadreamer wrote:Agat, по консоли и скриншотам - ошибок никаких нет. Теперь надо как-то поймать вывод после захода в StopRead, т.е. всё, что будет написано после строки IDevPtr->SET_INPUT_PARS returned TRUE (OK). Полагаю, есть небольшое время между вызовом этого блока и крахом системы?.. Можно успеть сфоткать на фотоаппарат, при желании. Или нет?
По варианту 32 бит - нужно так же читать отладку, без неё не могу больше ничего сказать. Вывод там должен быть не такой большой, т.к. до InitModule дело не доходит.

Лог консоли, который я скинул - это за один шаг до ошибки, после нажатия следующего шага labview замерает на несколько секунд и в логе ничего не менятся! после синий экран.
В 32-битной версии заработало!!! Изначально с модулями напутал.
Agat
beginner
beginner
 
Posts: 27
Joined: 16 Jan 2019, 09:22
LabVIEW Version: 18
Karma: 0

Re: USB3000 & LabView

Postby dadreamer on 20 Feb 2019, 08:18

Agat wrote:В 32-битной версии заработало!!! Изначально с модулями напутал.

32-битные DLL из этой темы, 32-битный :labview: на Windows 10?
User avatar
dadreamer
professor
professor
 
Posts: 3260
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 816
I/O VIP vision internet

Re: USB3000 & LabView

Postby Agat on 20 Feb 2019, 10:13

dadreamer wrote:
Agat wrote:В 32-битной версии заработало!!! Изначально с модулями напутал.

32-битные DLL из этой темы, 32-битный :labview: на Windows 10?

Так точно.
Agat
beginner
beginner
 
Posts: 27
Joined: 16 Jan 2019, 09:22
LabVIEW Version: 18
Karma: 0

Re: USB3000 & LabView

Postby dadreamer on 20 Feb 2019, 22:16

У меня такое ощущение, что уже в GetInputPars стэк портится, а когда программа в StopRead входит, :labview: просто падает с исключением. В StopRead всего одна функция вызывается, ничего "криминального" не должно быть. Ну, для 100%-ной дефектовки можно провести тест вот на такой программе:
ReadData-TEST.vi
lv2018
(21.27 KiB) Downloaded 14 times
Как видно из диаграммы, активированы три :vi: : CreateInstance, InitModule и ReleaseInstance. Три прочих :vi: - GetInputPars, SetInputPars и StopRead - отключены. Предлагаю выполнить серию запусков с фиксацией результата:
1. Исходное состояние, как есть - всё должно быть ок;
2. CreateInstance, InitModule, StopRead и ReleaseInstance;
3. CreateInstance, InitModule, GetInputPars и ReleaseInstance;
4. CreateInstance, InitModule, SetInputPars и ReleaseInstance;
5. CreateInstance, InitModule, GetInputPars, SetInputPars и ReleaseInstance.
Что происходит, когда все 6 :vi: работают, мы уже знаем. После каждого запуска желательно делать так: File -> Close All. Зачем? Чтобы явно вызвать падение :labview: , если память порушена (при закрытии :vi: :labview: выполняет очистку памяти и, "наступая на грабли" в стэке, легко падает, тогда как при открытом :vi: вылет может произойти далеко не сразу).

Спасибо, что всё ещё продолжаете заниматься этим нелёгким делом. Надеюсь, допилим-таки 64-битные либы до рабочего состояния. :wink:
User avatar
dadreamer
professor
professor
 
Posts: 3260
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 816
I/O VIP vision internet

Re: USB3000 & LabView

Postby Agat on 21 Feb 2019, 08:06

dadreamer wrote:Спасибо, что всё ещё продолжаете заниматься этим нелёгким делом. Надеюсь, допилим-таки 64-битные либы до рабочего состояния. :wink:

Мне спасибо? Это вам спасибо!
Ошибка возникает только в 5-ом варинте...
CreateInstance,InitModul,ReleaseInstance.txt
(9.06 KiB) Downloaded 12 times
Agat
beginner
beginner
 
Posts: 27
Joined: 16 Jan 2019, 09:22
LabVIEW Version: 18
Karma: 0

Re: USB3000 & LabView

Postby Agat on 21 Feb 2019, 08:17

Прошелся по шагам в конфигурации 5. CreateInstance, InitModule, GetInputPars, SetInputPars и ReleaseInstance.
Ошибка возникла при выполнении ReleaseInstance
Agat
beginner
beginner
 
Posts: 27
Joined: 16 Jan 2019, 09:22
LabVIEW Version: 18
Karma: 0

Re: USB3000 & LabView

Postby dadreamer on 24 Feb 2019, 21:54

Нашёл несколько однотипных "косяков" в коде GetInputPars, SetInputPars и ReleaseInstance. Не совсем корректно выполнялась работа с памятью для некоторых структур. Профиксил :vi: , перезалил - viewtopic.php?p=80045#p80045 Прошу проверить и отписать результат.
User avatar
dadreamer
professor
professor
 
Posts: 3260
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 816
I/O VIP vision internet

Re: USB3000 & LabView

Postby Agat on 25 Feb 2019, 08:11

dadreamer wrote:Нашёл несколько однотипных "косяков" в коде GetInputPars, SetInputPars и ReleaseInstance. Не совсем корректно выполнялась работа с памятью для некоторых структур. Профиксил :vi: , перезалил - viewtopic.php?p=80045#p80045 Прошу проверить и отписать результат.

Ура Работает!!! :1stplace: а как консоль убрать?
Спасибо вам большое! Надеюсь это понадобится не только мне.
Agat
beginner
beginner
 
Posts: 27
Joined: 16 Jan 2019, 09:22
LabVIEW Version: 18
Karma: 0

Re: USB3000 & LabView

Postby dadreamer on 25 Feb 2019, 09:12

Agat wrote:Ура Работает!!! :1stplace: а как консоль убрать?

Замените Rtusbapi.dll и wrRtusbapi.dll на обычные версии (без пометки DBG).
Agat wrote:Спасибо вам большое! Надеюсь это понадобится не только мне.

Пожалуйста! :wink: Я тоже на это надеюсь. :)

P.S.: если нужны исходники обёрток или основных библиотек, дайте знать.
User avatar
dadreamer
professor
professor
 
Posts: 3260
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 816
I/O VIP vision internet

Previous

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

Who is online

Users browsing this forum: No registered users and 0 guests

cron