Выбор железа

Радиотехника, платы, схемы, оборудование, фото- видео- приборы, компьютеры
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Выбор железа

Сообщение jane_wild »

Ребята помогите с выбором железа. Начальство озадачило новым проектом. Необходимо оределится с железом. Требование 26Ai и 3Ао и десяток DI/O Sample rate должен быть достаточно высоким ( необходимо видеть синусоиду 3000 Hz) максимальное количество одновременно задействованых аналоговых каналов 14. Вот.
Выбираю между cDAQ 9174 + модули 9205 + 9263 + 9403 либо один многофункциональный USB-6353
Вообще в общем какие преимущества, либо недостатки cDAQ перед многофункциональным девайсом?
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: Выбор железа

Сообщение Kosist »

jane_wild писал(а):Вообще в общем какие преимущества, либо недостатки cDAQ перед многофункциональным девайсом?
cDAQ более индустриальное решение, особенно с Ethernet портом (из собственного опыта знаю, что заказчики обычно избегают использования USB интерфейса, так как сетевое соединение более надежное). Плюс преимущество то, что Вы можете его более легко расширять - менять модули, добавлять (у Вас в данном случае еще один слот остается). А USB-6353 стоит много, но вдруг в будущем будет не хватать еще одной цифровой линии - будете в патовой ситуации.
Можете также посмотреть в сторону PCI 6353, но к нему нужен будет еще и терминал-блок.
Кстати, а вольтажи (уровни сигналов) обеих решений Вам подходят?
ИМХО, я бы выбрал cDAQ...
Мы делили апельсин - много наших полегло...
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Выбор железа

Сообщение jane_wild »

заказчики обычно избегают использования USB интерфейса, так как сетевое соединение более надежное
Был противоположный опыт - сразу после включения установки, по каким то причинам программа запускалась через раз. Стоило в МАХ сделать unreserve и затем reserve система нормально запускалась и весь день без нареканий. Поставила перед созданием задачи эти две VI
reserve.png
reserve.png (1.56 КБ) 6090 просмотров
и после них паузу 3 сек и все заработало, только запускалась дольше.
Ну да ладно, это было в прошлом и причина осталась не выяснена, с тех пор недолюбливаю cDAQ, хотя думаю что необосновано....
В плане расширямости - да, согласна, cDAQ - лучший выбор. В плане цены - получается дороже cDAQ 9184-$1350 (с ethernet) 9205-$899, 9263-$466 и 9403-$443 итого $3158. Для сравнения USB-6353-$2457
Хотя +/- $1000 на общем фоне цены проекта будет не так сильно заметна. Вопрос скорее в скорости. В первом посте я писала, что нужно будет видеть 3000 герц минимум по трем каналам одновременно. А с-модуль 9205 250Ks/S получается, что если задействовать 14 каналов то выйдет 15kS (250/14 = 17.8 ) иными словами пять точек на период. Моя синусоида будет больше на пилу похожа...
А что если в дополнение к NI 9205, прикупить NI 9222 (4 ch 500 Ks/S) и в программе создать вторую (скоростную) AI задачу. Будет ли работать такая связка? И хватит ли ресурсов у cDAQ передавать по Ethernet такой объем информации? Примерно... одна посылка будет (NI 9205 Sample rate 10kS x 10ch = 1000000 плюс 4ch x 100kS) Вообщем полтора миллиона отсчетов каждые 100mS. Я правильно посчитала? И это не считая DI/O. Сдюжит? Сбор данных - continues acquisition - must! Спасибо за советы.
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: Выбор железа

Сообщение Kosist »

С этой точки зрения USB карта подходит лучше, т.к. на cDAQ что-то не видно AI модулей с Single-Ended входом, и раздельными АЦП; я пропустил этот момент по частоте сбора данных...
Вы можете также попробовать обратиться в техподдержку NI - описать Ваш проект, и что они посоветуют по железу.
Мы делили апельсин - много наших полегло...
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Выбор железа

Сообщение Borjomy_1 »

Вообщем полтора миллиона отсчетов каждые 100mS
100Мбит сеть пропускает 10Мбайт/с. По 2 байта на замер (для 16 бит АЦП) это 5MS/s. Вот и считайте. Если настроить две задачи сбора, то будет работать. Но. Возникает вопрос синхронизации, который необходимо решить, поскольку оба модуля изначально работают от своих тактовых генераторов.
Кстати, 10kS/s *10 каналов = 100kS/s, а не миллион. В сумме у вас выходит 500kS/s, что составляет примерно 10% от максимальной пропускной способности сети.
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Выбор железа

Сообщение jane_wild »

Кстати, 10kS/s *10 каналов = 100kS/s, а не миллион.
Ну да, Вы правы - ноликом ошиблась.
оба модуля изначально работают от своих тактовых генераторов
Так это получается каждый с-модуль имеест собственный генератор? А я думала что общий clock для всех модулей. :super:
Возникает вопрос синхронизации
Что Вы имеете ввиду? В моем понимании два паралельных цикла (Ai tasks), каждый собирает от своей задачи и через очередь шлет данные для обновления UI. Данные прилетели - обновили индикаторы - графы.. Что нужно синхронизировать?
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Выбор железа

Сообщение Borjomy_1 »

Что нужно синхронизировать?
Синхронизировать сбор. Чтобы оба таска работали от одного тактового генератора (это может быть клок от одного из модулей, но такой, чтобы и другой модуль имел к нему доступ) и запускались одновременно. И кратные частоты сбора. Иначе оба таска моментально разъедутся. Возможно, у DAQ модулей один клок ( у меня нет под рукой, чтобы проверить), но на это надо обратить внимание. Например, у дельта-сигма 24 бит АЦП, аля NI 9237, свой тактовый генератор, и к нему может подцепиться только такой-же модуль. Другие типы АЦП и ЦАП к нему подцепиться не могут. И он ни к кому подцепиться не может. Поэтому синхронный сбор таких АЦП и 16 битных или управление ЦАП возможен только под управлением cRio с FPGA
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Выбор железа

Сообщение Blackman »

Так это получается каждый с-модуль имеест собственный генератор? А я думала что общий clock для всех модулей....
C Series Analog Input Modules can be categorized into four groups based on their synchronization: Reference Clocked, Delta Sigma, Slow Sampled and Successive Approximation Register (SAR).
Reference Clocked modules convert using an internal onboard clock. This onboard clock is disciplined using a phase lock loop to another internal clock or can be disciplined to clocks external to the module.
Delta Sigma Modules use a 24-bit ADC and convert using a clock internal to the module.
Slow Sampled Modules use a 24-bit ADC and convert using an external clock that originates from the CompactDAQ controller or chassis.
SAR Modules use a Successive Approximation ADC (12- or 16-bit) and convert using an external clock.

Reference Clocked Module: 9775

Delta Sigma Modules: 9202, 9218, 9225, 9227, 9229, 9230, 9232, 9234, 9235, 9236, 9237, 9238, 9239, 9242, 9244, 9246, 9247, 9250, 9251

Slow Sampled Modules: 9207, 9208, 9209, 9210, 9211, 9212, 9213, 9214, 9216, 9217, 9219, 9224, 9226, 9228

SAR Modules: 9201, 9203, 9205, 9206, 9215, 9220, 9221, 9222, 9223
http://www.ni.com/tutorial/5376/en/
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Выбор железа

Сообщение jane_wild »

Синхронизировать сбор
Я извиняюсь за свою тупость, но зачем? Пусть себе разъезджаются. Только что проверила на реальном железе. Имеется установка с DAQ-9188 и в шасси присуствуют два 9205. Удалось проверить.
Создала две независимые задачи: 4ch, Sample Rate 10000, сбор каждые 80mS на выходе получила ожидаемый 2D массив 4 ряда по 800 элементов.
аналогично вторая задача 3ch, Sample Rate 80000, сбор каждые 100mS на выходе 3x8000. Циклы крутятся с разной скоростью... Правда все это в одном vi и массивы обновляются тут же на месте. Может будет какие то непонятки с обновлением UI в реальном проекте, если данные будут прилетать по отдельности и с разной скоростью?
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Выбор железа

Сообщение jane_wild »

SAR Modules use a Successive Approximation ADC (12- or 16-bit) and convert using an external clock.
Совсем запуталась... external clock как же оно с разной частотой работает, если clock внешний?
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: Выбор железа

Сообщение Kosist »

jane_wild писал(а):Я извиняюсь за свою тупость, но зачем? Пусть себе разъезджаются.
Все зависит от приложения. Но если измерения двумя картами логически связанны друг с другом, то их нужно синхронизировать. Например, Вы одной картой меряете силу которой деформируется образец; а второй - измеряете собственно деформацию образца. Как без синхронизации тогда узнать, при которой силе образец был окончательно деформирован?
А так - да, можно мерять и без синхронизации, но опять же - все зависит от Вашего приложения; какие собственно данные измеряются, и как будут анализироваться.
Мы делили апельсин - много наших полегло...
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Выбор железа

Сообщение jane_wild »

Насчет синхронизации - стало более менее понятно, зачем это делать. Теперь вопрос стоит как?
Структура проекта предполагается "модульная" (не люблю, когда все свалено в кучу).
В смысле техники реализации... Два vi складывают данные в общую очередь, а третий vi их от туда достает и обновляет UI. Значит нужно сделать так, что бы два соседних элемента (два двумерных массива) в очереди соответствовали одному измерению. Скажем прилетел массив от первой задачи, - положили его в буфер и ждем второго. Прилетел второй, достали из буфера первый и обновили UI. С этим более менее понятно.
Теперь передающая сторона, вернее две стороны. Как добится что бы два независимых vi складывали в очередь в строгой последовательности? Значит делаем кратные частоты 10kS и 100kS и одинаковые по времени цикла, которые будут складывать данные, скажем 100mS. А дальше что? Любая из этих задач может положить в очередь чуточку раньше другой... Уведомители? дополнитетьный буфер на передающей стороне? Как умные люди делают? Спасибо
Аватара пользователя
Andrew Lunev

Activity Professionalism
VIP
VIP
Сообщения: 957
Зарегистрирован: 11 дек 2010, 12:31
Награды: 2
Версия LabVIEW: 2014-2021
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 10 раз

Re: Выбор железа

Сообщение Andrew Lunev »

Эта задача разбивается на две.
1. Обеспечить аппаратную синхронизацию именно сбора данных или даже сбора и выдачи данных. Именно про эту проблему все писали выше. Но возникает закономерный вопрос, нужна ли эта синхронизация в вашей задаче? То есть будут ли где-то дальше сравниваться мгновенные значения из разных измерений? Например, для вычисления сдвига фазы между двумя сигналами или получения разности сигналов. Если это требуется, то надо настраивать задачи сбора так, чтобы данные собирались синхронно и подбирать для этого соответствующие модули. Если же каналы будут обрабатываться независимо, то можно не заморачиваться с синхронизацией.
2. После того, как данные собраны с аппаратной синхронизацией возникает задача их сопоставления. Но, если данные синхронизованы, то они обязательно должны быть в одной задаче сбора данных.
Если же у вас могут быть разные частоты сбора и разные задачи, то видимо вам не столь важна синхронизация и просто собирайте данные и пишите в файл и выводите на экран. В данном случае вам достаточно просто обеспечить синхронный запуск задач по единому триггеру.
Аватара пользователя
jane_wild
master
master
Сообщения: 459
Зарегистрирован: 30 июн 2016, 02:11
Версия LabVIEW: 2020
Благодарил (а): 83 раза
Поблагодарили: 15 раз
Контактная информация:

Re: Выбор железа

Сообщение jane_wild »

Видимо все же без синхронизации не обойтись. Опишу реальную задачу. Имеется датчик углового перемещения RVDT, на певичную обмотку которого подается 3000гц. Сигнал снимается со вторичной, фаза (по отношению к первичной) и амплитуда зависят от угла поворота. Суть вот в чем. Когда подается напряжение на соленоид, начинается вращение механизма. Мне нужно измерить время от начала подачи напряжения, до начала движения механизма. Вообщем строю огибающую синусоиды, как в этом посте (кстати проблема с выбросами не решена до сих пор), что бы было видно начало изменения амплитуды и вывожу на график вместе с напряжением соленоида, ну и курсорами на графике измеряю это время. Это время составляет около 10 - 15 миллисекунд. Синусоида и напряжение соленоида планируются в разных tasks, как же их все же синхронизировать? В смысле как запустить эти две задачи на сбор данных одновременно, если два с-модуля тактируются от шасси DAQ. Или как говорил Andrew Lunev,
они обязательно должны быть в одной задаче сбора данных
что совсем не желательно.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3391
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Выбор железа

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

jane_wild писал(а): В смысле как запустить эти две задачи на сбор данных одновременно, если два с-модуля тактируются от шасси DAQ. .
Как-то так
Ответить

Вернуться в «Железо»