Форум:

Вы не вошли.

 Поиск | Регистрация | Вход 

#1 Re: Техническая поддержка » l-791 Внешний старт » 22.11.2017 11:52:47

Добрый день.
Спасибо за предоставленный ответ, что позволил отбросить сомнения в правильности подключения и сосредоточится на других возможных причинах.

Используется собственное ПО.
Проблема была решена. Суть проблемы оказалась в небольшой рассинхронизации системы.
Возникали ситуации что внешний сигнал на старт иногда приходил раньше чем выполнялась функция
StartLDevice(); в основной программе.

#2 Техническая поддержка » l-791 Внешний старт » 21.11.2017 12:15:45

Leonid
Ответов: 2

Добрый день.

Необходимо реализовать внешний старт на 2-х АЦП L-791

Согласно документу l791_users_guide.pdf есть синхровход на ножке номер 37, однако общая точка у него значится GND которая судя по документации не вынесена на внешний разъем, есть только на внутреннем.
Как правильно подключить внешний сигнал для старта АЦП?
Пробовал делать общей точкой и AGND и GND32 ничего не работает. Подаю задний фронт согласно документации.
Если общую точку надо выносить с внутреннего разъема, зачем так сделано ?

#3 Re: Техническая поддержка » Измерение коротких импульсных сигналов с помощью L-502 » 17.03.2017 06:07:42

Данная работа на данный момент носит единичный характер. Но спасибо еще раз за столь развернутый ответ, на будущее будем иметь ввиду возможности выпуска модификаций при больших объемах закупок.

#4 Re: Техническая поддержка » Измерение коротких импульсных сигналов с помощью L-502 » 16.03.2017 07:08:10

Гарманов Александр пишет:
Leonid пишет:

При моделировании данной ситуации результат измерения после 250нс, 3.5 В импульса на 5В шкалы, не дотягивал сотни мв, тоесть был около 3.3В-3.1В.
Аналоговый сигнал подключен в соответствии с приложением B руководства пользователя. Обычный синусоидальный сигнал измеряется корректно.

Леонид, а фазу синхронизации нет ли возможности подстроить внешним образом, чтобы минимизировать ошибку измерения в ситуации нехватки полосы частот пропускания L-502? Если фазу синхронизации найти оптимальную, то данную погрешность измерения можно сильно уменьшить.


Теоретически фазу синхронизации можно сдвинуть, но достаточно грубо.
Я провел эксперимент, с тем l-502 который у нас есть и используется для отладки систем.
Измерял импульс амплитудой 3.3В длинной 500нс. При этом двигал фронт синхронизации вдоль импульса.
Это все на испытательном стенде, поэтому имелась возможность двигать импульс синхронизации как угодно относительно начала измеряемого импульса.
результаты следующие:
нс после начала импульса = результат измерения
30  = 142 мв.
100 = 2.33 В
150 = 2.76 В
200 = 2.95 В
250 = 3.13 В
300 = 3.21 В
350 = 3.24 В
400 = 3.26 В
450 = 3.25 В
550 = 1.5  В

Если измеряемый импульс сделать длиннее то результаты измерения подбираются в плотную.
Однако если импульс будет 5В то время становления будет выше.
К сожалению немогу провести эксперимент с другими амплитудами измеряемых импульсов. За неимением технической возможности.
В данном случае я измерял синхровыход с генератора и менял длинну импульсов.Так же хорошо синхронизировать сигналы другой амплитуды нечем.

Если учесть что, как следовало из ответа выше, на другом l-502 могут получится сильно другие результаты, результат работоспособности всей системы в целом может оказаться неудовлетворительным.

#5 Re: Выбор оборудования » Измерение коротких импульсных сигналов » 13.03.2017 11:06:10

Имеется оборудование на исследовательской установке. 8-ми частотный радар, у него имеется 1 аналоговый выход и 8 дискретных(инвертированная ТТЛ логика).

На аналоговый выход выводятся результаты измерения в виде прямоугольных импульсов различной амплитуды, от 0 до 5 вольт. Импульсы длительностью 500нс с частотой около 500Кгц.

дискретные выходы информируют какому каналу в данный момент выставлены данные на аналоговом выходе. Хоть каналы и переключаются последовательно, дискретные выходы тоже необходимо измерять во избежание ошибок.

Так же дискретные выходы используются как сигнал готовности данных для конкретного канала.
Для одного канала это выглядит так:
phase_detect.jpg
Зеленый: Аналоговый выход, результат измерения.
Оранжевый: Один из дискретных, сигнал готовности данных данного канала.

Приведенная погрешность: 0.5%

по времени, надо успеть измерить в течении 200нс после прихода синхроимпульса.

Установка работает в импульсном режиме, максимальное время непрерывного сбора данных 20с.

Такого рода сигналы могут встречаться в импульсных системах измерения. Измеряется некая физическая величина, выставляется пропорционально ей амплитуда импульса. Так же обычно присутствует сигнал готовности, который говорит о том что импульс данных сформирован.

#6 Выбор оборудования » Измерение коротких импульсных сигналов » 10.03.2017 08:58:14

Leonid
Ответов: 6

Добрый день,
Необходимо измерить амплитуду импульсов шириной 500 нс. Имеется сигнал готовности данных, который выставляется примерно через 250 нс после начала импульса. Диапазон изменения амплитуды импульсов от 0 до 5 вольт.
Импульсы идут с частотой около 500кГц.

Так же в момент импульса готовности данных необходимо измерять дискретные сигналы с 8 входов.

Имеются ли у вас какие-нибудь технический средства которые могут гарантированно измерить сигнал такого типа?

#8 Техническая поддержка » Измерение коротких импульсных сигналов с помощью L-502 » 09.03.2017 12:29:11

Leonid
Ответов: 8

Добрый день,
Необходимо измерить амплитуду импульсов шириной 500 нс, синхросигнал приходит в середине импульса. Измеряется 1 канал, никакого мультиплексирования не требуется.
Интересует принципиальная возможность измерения с помощью данного АЦП такого сигнала, какой ширины импульс можно достоверно измерить?

Не нашел в документации, подскажите если известно сколько время становления сигнала на микросхеме АЦП, от момента начала импульса? И какое время реакции после прихода синхроимпульса?

При моделировании данной ситуации результат измерения после 250нс, 3.5 В импульса на 5В шкалы, не дотягивал сотни мв, тоесть был около 3.3В-3.1В.
Аналоговый сигнал подключен в соответствии с приложением B руководства пользователя. Обычный синусоидальный сигнал измеряется корректно.

#9 Re: Техническая поддержка » Проблема с работой АЦП L502 на linux » 26.01.2017 14:30:01

Нет, в сам драйвер или библиотеку никаких изменений не вносилось, пришлось немного подкорректировать Cmakelists.
Иногда корректировке подвергались makefile, но все это можно поправить и в Cmakelists.

Тестировалось все на промышленном компьютере на основе процессорной платы PICMG1.3
4U/19"/Intel Core-i3 3220 3.3ГГц/2x2Гб DDR3 1600/1000Гб SATA3 HDD/DVD-RW/DVI-I/2xГб LAN/8xPCI/3xPCIEx1/1xPCIEx16/1xRS-232, 1xRS-232,422,485/ 400Вт ATX
На нем имеются обе системы Windows 10 и Slackware 12.2 с ядром 3.2.21, тестировалось все на нем, как на windows так и на linux.
Попробовал просто оценить скорость принятия данных, предварительно закомментировав кусок кода в котором происходит ошибка, умозрительно совпадает, 1024000 отсчетов на частоте 100кГц собирает примерно секунд за 11-12, при частоте 200кГц секунд за 6. 

Что бы откомпилировать пример под linux пришлось закомментировать функции
`E502_MakeDevRecordByIpAddr'
`E502_UsbGetDevRecordsList` 
иначе компилятор выдает: "undefined reference to" (строчки выше)

По данной ссылке можно скачать пример который я использовал:
http://www.lcard.ru/forums/img/members/287/example.rar
в архиве 4 файла:
main.c - исходный код используемого примера
outn.txt - перенаправленный вывод с консоли
dumpBefore.txt - содержит дамп области rcv_buf до выполнения функции X502_Recv
dumpAfter.txt - содержит дамп области rcv_buf после выполнения функции X502_Recv

Для проверки действительно ли функция X502_Recv что то пишет, перед ее выполнением область памяти rcv_buf была заполнена нулями.
Какие то данные действительно принимаются, но понять их умозрительно все равно не удается.

Сделал все рекомендации, в частности убрал сбор с цифровых линий, но нулевые значения никуда не делись.

Пока проблему решить не удалось.

#10 Техническая поддержка » Проблема с работой АЦП L502 на linux » 26.01.2017 10:51:52

Leonid
Ответов: 4

Добрый день

Необходимо собрать работоспособную систему на linux Slackware 12.2 с версией ядра 3.2.21
Дистрибутив брался с репозитория https://bitbucket.org/lcard/lpcie_sdk
Не совсем гладко, но собрать библиотеку и драйвер получилось.

Суть проблемы, попробовал собрать и запустить пример, имеющийся по адресу
http://www.lcard.ru/support/developer в разделе L-502 / E-502
"Пример потокового сбора с АЦП/DIN на языке C для Microsoft Visual C++ 2008 или GCC"
Так же пробовал пример который ставится вместе с инсталятором на windows.
Результат одинаковый:
функция L502_ProcessData возвращает ошибку:

"Ошибка обработки данных: Неверный номер канала в обрабатываемом потоке синхронного ввода"

Если сохранять сырые данные, содержимое rcv_buf на данные с АЦП не похоже.
Слишком много подряд 0х00000000 иногда сменяются на серии полной неразберихи.

Драйвер запущен, lpcie в списке значится.

Пробовал запустить данный пример на windows 10, все прекрасно функционирует.

В чем может быть проблема?

Контакты

Адрес: 117105, Москва, Варшавское шоссе, д. 5, корп. 4, стр. 2

Многоканальный телефон:
+7 (495) 785-95-25
Факс: +7 (495) 785-95-14

Отдел продаж: sale@lcard.ru
Техническая поддержка: support@lcard.ru

Время работы: с 9-00 до 19-00 мск