2013-02-10 1 views
0

Я запускаю одновременное получение данных и аппаратное управление. Сбор данных осуществляется с помощью устройства NI-DAQmx. Аппаратный контроль уже написан на C# .NET, и мы хотели бы синхронизировать наше приобретение с элементом управления, т. Е. Ждать события управления -> собирать данные -> стоп-сбор -> продолжить управление. Я знаю, что есть NI Measurement Studio, которая предоставляет средства управления .NET для сбора данных, но я не думаю, что мой босс хочет заплатить $ 350 + за лицензию и 45-дневную оценку недостаточно. Итак, я обнаружил, что вы можете общаться с LabVIEW (который уже установлен на наших компьютерах) с помощью элементов управления ActiveX, и это похоже на маршрут. Я нашел example on zone.ni, которые открывают LabVIEW vi, принимает входные данные из формы Windows, выполняет ли вычисление в vi и возвращает значение. Во-первых, я не понимаю LabVIEW в малейшей степени и не вижу, где входные параметры действительно входят в vi на его блок-схеме и как он знает, чтобы отправить выход в выходной параметр обратно в форму Windows. Помимо этого, для наших целей нам нужно собрать матрицу данных (3-4 больших столбца) из LabVIEW vi, с которой мы можем запустить процесс приобретения. Кто-нибудь знает, если/как я могу это сделать с выходным параметром или где я могу узнать, как? Кроме того, я был бы признателен, если бы кто-нибудь мог объяснить, как LabVIEW обрабатывает входные ссылочные параметры при вызове vi.Получение матрицы данных из LabVIEW в C# .NET

Благодаря

+0

Я бы удостоверился, что лицензия, которую вы имеете на LabVIEW, не входит в комплект разработчика. Такой набор включает в себя Measurement Studio. –

+0

экономит 350 $ лучше, чем потратить дни или недели на изучение всего нового языка программирования? – CharlesB

+0

@Ton Plomp - Я уверен, что это не так. Это академическая лицензия. –

ответ

2

У меня нет практического опыта работы с .NET, но ВП просто вызывают функции из C DLL. Я предполагаю, что должно быть возможно вызывать одни и те же функции из C# и полностью избегать LV, что, вероятно, лучше для вас, если вы этого не знаете. Если у вас Labwindows/CVI, я предполагаю, что у вас уже есть примеры того, как это сделать. Если нет, я думаю, что программа установки DAQmx позволяет устанавливать такие примеры.

+0

Вау, приятно знать. Это действительно было прямо передо мной в течение некоторого времени, и я продолжал игнорировать его. Существует действительно API DAQmx C для .NET. Благодаря! –

0

Вы думали о сериализации данных и импортировать его в LabView? Я знаю, что он может анализировать несколько простых форматов, включая даже CSV. Если вам нужны обратные вызовы между DAQ и LabView, этого будет недостаточно, но в случае импорта/экспорта данных этот подход работает достаточно хорошо. Я не специалист LabView, но я сделал довольно много сбора данных и системной интеграции.

Смежные вопросы