Scan from string Visa Com
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Scan from string Visa Com
Помогите пожалуйста решить проблему извлечения данных со стороны Visa (COM):
Это 10 строчный принимаемый массив переменных значений.
выглядит так:
AT0:12345.678R
AT1:12345.678R
AT2:12345.678R
AT3:12345.678R
AT4:12345.678R
AT5:12345.678R
AT6:12345.678R
AT7:12345.678R
AT8:12345.678R
AT9:12345.678R
Приведенная Блок диаграмма позволяет мне извлекать эти значения построчно и поочередно в зависимости от задаваемой задержки в цикле 10 - 500 ms только в String indicator 0 и 1
Нужно все разделить в отдельные индикаторы как показано на панели.
Как должен выглядеть синтаксис блока Scan from string такого представления и другие настройки для каждой конкретных строк?
Это 10 строчный принимаемый массив переменных значений.
выглядит так:
AT0:12345.678R
AT1:12345.678R
AT2:12345.678R
AT3:12345.678R
AT4:12345.678R
AT5:12345.678R
AT6:12345.678R
AT7:12345.678R
AT8:12345.678R
AT9:12345.678R
Приведенная Блок диаграмма позволяет мне извлекать эти значения построчно и поочередно в зависимости от задаваемой задержки в цикле 10 - 500 ms только в String indicator 0 и 1
Нужно все разделить в отдельные индикаторы как показано на панели.
Как должен выглядеть синтаксис блока Scan from string такого представления и другие настройки для каждой конкретных строк?
LabView 14,18
-
ladik
- developer
- Сообщения: 275
- Зарегистрирован: 18 ноя 2014, 11:45
- Награды: 1
- Версия LabVIEW: 2015, 2019
- Откуда: Екатеринбург
- Благодарил (а): 4 раза
- Поблагодарили: 3 раза
- Контактная информация:
Re: Scan from string Visa Com
Один из множества вариантов
- Вложения
-
- example.vi
- (11.56 КБ) 120 скачиваний
Дорогу осилит идущий.
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Scan from string Visa Com
ladik,
премного благодарен, буду пробовать совместно с коммуникацией.
По результату отпишусь
премного благодарен, буду пробовать совместно с коммуникацией.
По результату отпишусь
LabView 14,18
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Scan from string Visa Com
При считывании с COM ничего не изменилось, отображение содержимого буфера происходит только в 1 стринг и поочередно всех строк, остальные индикаторы пустые. Кроме того, мне не удалось отфильтровать именно нужные значения, как это сделано изначально у меня.
В Вашем случае, код из одного общего стринга рапределяется верно, но я ведь работаю с непрерывным обновлением содержимого в буфере в и у меня сразу за значением AT0 ...9 отображаются те символы, которые меня не интересуют.
В буфере все происходит не так, как в Вашем примере. !Это не передача из стринга в стринг. Буфер постоянно обновляется новыми значениями в том порядке, в котором я указал, причем каждая строка с частотой прерываний в 10-500 ms.
Кроме того блок очистки буфера, который я могу подключать к процедуре, позволяет мне читать только одну первую строку.
В Вашем случае, код из одного общего стринга рапределяется верно, но я ведь работаю с непрерывным обновлением содержимого в буфере в и у меня сразу за значением AT0 ...9 отображаются те символы, которые меня не интересуют.
В буфере все происходит не так, как в Вашем примере. !Это не передача из стринга в стринг. Буфер постоянно обновляется новыми значениями в том порядке, в котором я указал, причем каждая строка с частотой прерываний в 10-500 ms.
Кроме того блок очистки буфера, который я могу подключать к процедуре, позволяет мне читать только одну первую строку.
LabView 14,18
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Scan from string Visa Com
Kosist,
Проблема не в фильтрации нужных значений строки, с этим я справился.
Буфер при опросе записывает поочередно 10 строк за цикл, далее опять обновление пока не остановлю.
Я перепробовал немало вариантов и все дали отображение только состояния значений массива 0 строки или поочередно всех в зависимости от времени в цикле. Причем в случае при подключении модуля очистки буфера, значение 0 строки отображается в реальном времени, в отключенном - построчное чтение из буфера и он очищается с задержкой по прошествии нескольких циклов, в этом случае отображается история строк а не реальные значения и так же построчно в одном индикаторе а не весь массив.
Возможно мне нужен метод отображения содержимого всего буфера, далее применить такие элементы как Tab Constant, Line Feed Constant и nd of Line Constant.
Проблема не в фильтрации нужных значений строки, с этим я справился.
Буфер при опросе записывает поочередно 10 строк за цикл, далее опять обновление пока не остановлю.
Я перепробовал немало вариантов и все дали отображение только состояния значений массива 0 строки или поочередно всех в зависимости от времени в цикле. Причем в случае при подключении модуля очистки буфера, значение 0 строки отображается в реальном времени, в отключенном - построчное чтение из буфера и он очищается с задержкой по прошествии нескольких циклов, в этом случае отображается история строк а не реальные значения и так же построчно в одном индикаторе а не весь массив.
Возможно мне нужен метод отображения содержимого всего буфера, далее применить такие элементы как Tab Constant, Line Feed Constant и nd of Line Constant.
LabView 14,18
-
- leader
- Сообщения: 526
- Зарегистрирован: 28 фев 2010, 18:04
- Версия LabVIEW: LV2018
- Благодарил (а): 10 раз
- Поблагодарили: 18 раз
- Контактная информация:
Re: Scan from string Visa Com
Данные могут приходить не все сразу особенно на высоких скоростях, поэтому на следующей итерации надо учитывать, что осталось от предыдущей.
- Вложения
-
- COM.vi
- (22.84 КБ) 134 скачивания
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Scan from string Visa Com
Юрий, по умолчанию функция на открытие порта имеет конфигурацию на использование терминирующего символа переноса строки. Так что скорее всего данные с предыдущей итерации не так и важны, т.к. за один цикл чтения будет получен целый рядок (данные с одного канала АТ), т.е. рядок не будет разбит на части.
Select, так это потом вопрос к самому устройству, которое Вам посылает данные. Когда Вы используете функцию VISA Read, Вы читаете данные с буфера, тем самым очищая его. И если там находятся старые данные - сам прибор не посылает их правильно. Какая частота обновлений на стороне устройства, и какая частота чтения в приложении? Вы можете "выключить" терминирующий символ, и будете читать целую строку, все данные одним рядком. Посмотрите, какие данные получаете в таком случае. Ведь проблема потом не в парсинге данных, а в том, какие данные Вам прибор посылает.
Попробуйте еще использовать RealTerm - при его помощи можно писать полученные данные в лог-файл, или отображать в строке. Увидите, что там будет, и какая частота обновлений...
Select, так это потом вопрос к самому устройству, которое Вам посылает данные. Когда Вы используете функцию VISA Read, Вы читаете данные с буфера, тем самым очищая его. И если там находятся старые данные - сам прибор не посылает их правильно. Какая частота обновлений на стороне устройства, и какая частота чтения в приложении? Вы можете "выключить" терминирующий символ, и будете читать целую строку, все данные одним рядком. Посмотрите, какие данные получаете в таком случае. Ведь проблема потом не в парсинге данных, а в том, какие данные Вам прибор посылает.
Попробуйте еще использовать RealTerm - при его помощи можно писать полученные данные в лог-файл, или отображать в строке. Увидите, что там будет, и какая частота обновлений...
Мы делили апельсин - много наших полегло...
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Scan from string Visa Com
Юрий, вариант вообще не читается.
Kosist, я возможно чего-то недопонимаю, отключение в Visa терминирующий символ?
RealTerm - в каком тулките он лежит?
Прибор MCU STM32F103C8T6, кварц 8.000
Скорость обмена 115200
В моем случае на итерация настраивается для проверки. Производитель рекомендует до 500 ms.
С какой частотой происходит обновление данных на железе, трудно понять, при парсинге через терминал строки отображаются сразу всем пакетом с итерацией которая задана MCU.
Прикрепил на всякий случай свой рабочий
Kosist, я возможно чего-то недопонимаю, отключение в Visa терминирующий символ?
RealTerm - в каком тулките он лежит?
Прибор MCU STM32F103C8T6, кварц 8.000
Скорость обмена 115200
В моем случае на итерация настраивается для проверки. Производитель рекомендует до 500 ms.
С какой частотой происходит обновление данных на железе, трудно понять, при парсинге через терминал строки отображаются сразу всем пакетом с итерацией которая задана MCU.
Прикрепил на всякий случай свой рабочий
- Вложения
-
- ABC.vi
- (21.27 КБ) 138 скачиваний
LabView 14,18
-
- leader
- Сообщения: 526
- Зарегистрирован: 28 фев 2010, 18:04
- Версия LabVIEW: LV2018
- Благодарил (а): 10 раз
- Поблагодарили: 18 раз
- Контактная информация:
Re: Scan from string Visa Com
Юрий, вариант вообще не читается.
У меня всё читается. Перезалил в 16 версию.
У меня всё читается. Перезалил в 16 версию.
- Вложения
-
- Untitled 2.vi
- (22.37 КБ) 109 скачиваний
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Scan from string Visa Com
Юрий,
Мало что понял из Вашего примера, предпринял попытку построить код предложенным методом, результат никакой.
Прикрепил этот вариант после доработки, так же есть здесь и мой рабочий.
Если это не сложно, покажите пожалуйста мою модель с ABC.vi c 10 строками
Мало что понял из Вашего примера, предпринял попытку построить код предложенным методом, результат никакой.
Прикрепил этот вариант после доработки, так же есть здесь и мой рабочий.
Если это не сложно, покажите пожалуйста мою модель с ABC.vi c 10 строками
- Вложения
-
- Untitled 2.vi
- (23.38 КБ) 118 скачиваний
LabView 14,18
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Scan from string Visa Com
По ходу значения "1234" в каждой строке как и остальные, являются переменными и они не нужны
LabView 14,18
-
- leader
- Сообщения: 526
- Зарегистрирован: 28 фев 2010, 18:04
- Версия LabVIEW: LV2018
- Благодарил (а): 10 раз
- Поблагодарили: 18 раз
- Контактная информация:
Re: Scan from string Visa Com
Select, Если это не сложно, покажите пожалуйста мою модель с ABC.vi c 10 строками
Не понял, о чём здесь просьба. Прибора нет, проверить не могу. Единственное, что пришло в голову, так это создать простенькую модель приёма данных. Выкладываю свой и ваш вариант с этой моделью. Результаты оцените сами. Её можно усилить для выяснения своих недоумений. Если файлы опять не читаются, то, страшно подумать, неужели коронавирус добрался и до моего LV. Добавлб ещё, что так я делаю, когда о протоколе прибора ничего не известно.
Не понял, о чём здесь просьба. Прибора нет, проверить не могу. Единственное, что пришло в голову, так это создать простенькую модель приёма данных. Выкладываю свой и ваш вариант с этой моделью. Результаты оцените сами. Её можно усилить для выяснения своих недоумений. Если файлы опять не читаются, то, страшно подумать, неужели коронавирус добрался и до моего LV. Добавлб ещё, что так я делаю, когда о протоколе прибора ничего не известно.
- Вложения
-
- COM.vi
- (47.02 КБ) 128 скачиваний
-
- ABC (2).vi
- (32.27 КБ) 126 скачиваний
- Select
- developer
- Сообщения: 281
- Зарегистрирован: 12 дек 2017, 23:56
- Версия LabVIEW: 18
- Откуда: Врата надежды.
- Поблагодарили: 2 раза
Re: Scan from string Visa Com
Юрий,
Я тебе очень благодарен за твой вклад, но увы, баян не мой, код так и не пошел.
Выкладываю здесь отснятый ролик для наглядности
Парсинг в терминале и мой рабочий далеко не совершенный код с одноканальным отображением в реальном времени и многоканальный в с разной итерацией, где наблюдаем историю буфера измеряемого напряжения.
Значение на 0 канале меняю резистивно подстроечником, напряжение 0 - 3.300V остальные 9 каналов подтянуты к земле через резисторы во избежание шумов
Я тебе очень благодарен за твой вклад, но увы, баян не мой, код так и не пошел.
Выкладываю здесь отснятый ролик для наглядности
Парсинг в терминале и мой рабочий далеко не совершенный код с одноканальным отображением в реальном времени и многоканальный в с разной итерацией, где наблюдаем историю буфера измеряемого напряжения.
Значение на 0 канале меняю резистивно подстроечником, напряжение 0 - 3.300V остальные 9 каналов подтянуты к земле через резисторы во избежание шумов
Последний раз редактировалось Select 26 мар 2020, 01:44, всего редактировалось 5 раз.
LabView 14,18
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 4 Ответы
- 1210 Просмотры
-
Последнее сообщение Юрий
-
- 19 Ответы
- 2644 Просмотры
-
Последнее сообщение Artem.spb
-
- 3 Ответы
- 1728 Просмотры
-
Последнее сообщение Artem.spb
-
- 4 Ответы
- 1077 Просмотры
-
Последнее сообщение BAS
-
- 4 Ответы
- 250 Просмотры
-
Последнее сообщение AndreyDmitriev