Список форумов   Список форумов  

Наводка с соседнего канала.

Обсуждение работы в LabVIEW с оборудованием

Модераторы: Техподдержка NI, Robert, Модератор

Наводка с соседнего канала.

Сообщение FireFly » Пн май 18, 2009 5:42 pm

Встретился с интересным эффектом. На его устранение убил много времени :( Пока чисто случайно не понял что причиной всему особенность функции DAQmx Create Virtual Channel и работы коммутатора в модуле.
Пишу программу которая в частности измеряет напряжение с четырёх каналов с частотой 10кГц. Оборудование - cDAQ 9172 и AI модуль NI 9205. Для создания четырёх виртуальных каналов использую функцию DAQmx Create Virtual Channel. Физические каналы (дифференциальные входы) использую через один, получается соответственно 1 - AI1 (и AI9), 2 - AI3 (и AI11), 3 - AI5 (и AI13), 4 - AI7 (и AI15), неиспользуемые промежуточные входы сначала попарно соединил, а потом вообще все заземлил. Основная возникшая проблемма - некоторая часть напряжения с первого канала попадает на напряжение второго, со второго на третий, с третьего на четвертый, а с четвертого на первый. В цифрах: при подаче на каналы со 2 по 4 нулевого напряжения, а на первый 3,5В в программе вижу напряжение на втором канале 35 мВ при частоте 10кГц или 4,5 мВ при частоте 1кГц. Дальнейший анализ с помощью осцилографа снаружи модуля показал что напряжение на втором канале не совсем равно нулю... c частотой 10кГц (ну или сколько поставишь на частоту опроса) имеются скачки напряжения с амплитудой пропорциональной напряжению на предыдущем канале. Сделал вывод что это связанно с мультиплексором переключающим измерительные усилители каждого канала на вход АЦП. Далее в схеме эти скачки интегрируются на паразитных или иных емкостях и в итоге я вижу постоянное напряжение пропорциональное частоте дискретизации и напряжению на предыдущем канале.
Долго бился над решением проблеммы, в итоге решил в программе создать не 4 виртуальных канала, а 8 (полезными и обрабатывающимися из которых всё равно будет половина), включив сюда пропущенные промежуточные физические каналы, на которых 0, ведь и постоянная наводка от них если и будет, то будет пропорциональна напряжению, т.е. равна 0. И тут заметил собственно сам эффект, о котором хочу вам рассказать и обсудить его.
Эффект состоит в следующем: если на вход (physical channels) функции DAQmx Create Virtual Channel записать все каналы последовательно, то никакой наводки от соседнего канала ни на каком другом канале не будет. Но если один из каналов в последовательности пропустить, то в канале идущем следом за пропущенным появится наводка от канала идущем перед пропущенным (см. прикрепленные изображения). Ни в описании модуля, ни в описании функции, ни где-либо ещё я упоминания этого не встретил :(
Вложения
1.PNG
1.PNG (11.43 KiB) Просмотров: 2255
2.PNG
2.PNG (861 байт) Просмотров: 2256
FireFly
Активный пользователь
 
Сообщений: 39
Зарегистрирован: Пн май 18, 2009 11:50 am

Сообщение Наталья » Пт май 22, 2009 11:41 am

Я думаю, что Вы столкнулись с известной проблемой, описанной здесь
http://digital.ni.com/public.nsf/allkb/ ... FD00028DDF

Посмотрите эту статью и ссылки в её конце.
Наталья
Специалист LabVIEW
 
Сообщений: 86
Зарегистрирован: Ср янв 17, 2007 11:08 am


Вернуться в LabVIEW и оборудование National Instruments

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1