Простой пример работы с последовательным портом

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы
bassivny
interested
interested
Сообщения: 1
Зарегистрирован: 18 апр 2012, 17:59
Версия LabVIEW: 2011
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение bassivny »

Добрый день всем !


Создаю тут измеритель магнитного поля под управлением авр'овской иксмеги. Плата уже готова, аппаратная часть готова. Но для точной работы устройства требуется сложная программная калибровка. Грузить контроллер расчетами не хочется, для калибровки хотелось бы заюзать силы ПК. Сначала использовал простой терминал - по usb в режиме виртуального com'a гнал на комп данные. Неудобно дико: копировать их, вставлять в матлаб, анализировать, усреднять... Писать прогу под винду тоже кажется задачей не очень тривиальной.

Поэтому решил попробовать всю обработку и управление организовать через LV. Собственно, контроллер непрерывно каждое АЦ преобразование пихает 2байта в usb-буфер, LV их вполне шустро визуализирует уэйвформ чартом, индикатор показывает текущее читаемое значение...
Изображение

Но! Я никак не соображу, как мне из этого бесконечного потока данных формировать, например, массив из 1024 выборок для дальнейшего анализа. Я хочу, чтобы лабвьюшный прибор читал из порта 1024 значения, сохранял их в массив и успокаивался. Дальше я из этих значений находил бы max,min, СКО, среднее значение и так далее. А у меня как бы в распоряжении есть только текущее значение и всё, как мне сохранять все полученные 2байтовые значения в массив я не понял пока. Очень хотелось бы услышать совет. Заранее спасибо)
Sevas
user
user
Сообщения: 89
Зарегистрирован: 23 фев 2011, 19:32
Версия LabVIEW: 13
Откуда: Sevastopol

Re: Простой пример работы с последовательным портом

Сообщение Sevas »

А если считывать мегу не с While Loop, а в For Loop?
На вход N подаёшь сколько значений нужно считать, на выходе получишь фиксированный массив.
Как-то так

PS А можно подробнее о железе, какая мега, какой датчик используется, как к usb подключили?
Вложения
1024.jpg
1024.jpg (43.43 КБ) 14687 просмотров
___ bl ___
beginner
beginner
Сообщения: 10
Зарегистрирован: 26 фев 2012, 23:47
Версия LabVIEW: 2010
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение ___ bl ___ »

Добрый вечер! Начал использовать библиотеку lvserial.
Как в ней с конфигурировать wait for event (termination char)?

Заранее спасибо!
com_config.jpg
com_config.jpg (35.82 КБ) 14446 просмотров
com_read.jpg
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение mzu2006 »

___ bl ___ писал(а): Начал использовать библиотеку lvserial.
зачем?
___ bl ___
beginner
beginner
Сообщения: 10
Зарегистрирован: 26 фев 2012, 23:47
Версия LabVIEW: 2010
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение ___ bl ___ »

mzu2006 писал(а):зачем?
Подробное описание проблемы http://www.labviewportal.eu/viewtopic.php?f=22&t=5435
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение mzu2006 »

скорее всего, установка lvserial не поможет. Там, по моему, нет wait for events, там нужно просто указать разделитель (как, собственно, рекомендуется и для VISA)
ddda
interested
interested
Сообщения: 2
Зарегистрирован: 29 янв 2013, 12:37
Версия LabVIEW: 2011
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение ddda »

Здравствуйте. В описании прибора сказано: "один стартовый бит (start)". Что это может означать? Данные с прибора получать удается без ошибок железа, но есть подозрение, что данные теряются, т.к. один и тот же пакет данных может прийти без ошибок в контрольной сумме, а может и с ошибкой.
laryc
beginner
beginner
Сообщения: 19
Зарегистрирован: 02 июл 2013, 14:18
Версия LabVIEW: 2012
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение laryc »

посоветуйте "чайнику" что почитать... хочу с МКашки передавать 16ричный код под графику ..никак не въеду как работать бинарным файлом чтобы МКшку не загружать преобразованиями а разматывать код с VISы без всяких там кареток и перевода строки. За ранее благодарю.
Alex_1
interested
interested
Сообщения: 2
Зарегистрирован: 05 окт 2013, 16:33
Версия LabVIEW: 12
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение Alex_1 »

Как можно свьязать АЦП через USB порт, я имею ввиду через visa это возможно?
Shach
beginner
beginner
Сообщения: 10
Зарегистрирован: 12 окт 2013, 11:47
Версия LabVIEW: 7
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение Shach »

Здравствуйте!Не могу решить проблему:
С ком порта считывается число (первые 4 цифры которого значение силы тока, а другие 3 цифры - температура) Вытащить из одного числа ток и температуру - не проблема, использую mod. Мне нужно сделать график зависимости силы тока диода от температуры. Проблема в том, что я не могу забить массив со значениями температуры и тока, т.е. вновь приходящее значение затирает предыдущее (нулевой элемент).

Вот 2 рабочий варианта, извините за оформление.
Изображение
Изображение
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение dadreamer »

Shach

Вам надо накапливать значения в массиве через сдвиговый регистр. Посмотрите вот тему: http://www.labviewportal.org/viewtopic.php?f=21&t=5809
Shach
beginner
beginner
Сообщения: 10
Зарегистрирован: 12 окт 2013, 11:47
Версия LabVIEW: 7
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение Shach »

dadreamer,
спасибо большое, буду пробовать
546
beginner
beginner
Сообщения: 31
Зарегистрирован: 14 апр 2014, 10:42
Версия LabVIEW: 8.5
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение 546 »

Нужно соединить компьютер с ADAM 4018 через СОМ порт для регистрации температуры.
Подскажите с чего начать.
ПС:Почему некоторые блок-схемы на форуме отображаются как куча цветных квадратиков?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение dadreamer »

546 писал(а):Подскажите с чего начать.
С поиска по ключевым словам VISA, COM, RS232, Serial Port на форумах и поисковиках.
Почему некоторые блок-схемы на форуме отображаются как куча цветных квадратиков?
Глюк форума, в скором времени будет исправлен.
546
beginner
beginner
Сообщения: 31
Зарегистрирован: 14 апр 2014, 10:42
Версия LabVIEW: 8.5
Контактная информация:

Re: Простой пример работы с последовательным портом

Сообщение 546 »

А через ActiveX не получится соединить?
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Коммуникация с приборами»