Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


Проблема по-кадровой синхронизации L-783М

Вы не вошли.

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

Алексей
11.11.2009 13:27:11
#1

Гость

Проблема по-кадровой синхронизации L-783М

Добрый день!
У меня возникла проблема, помогите, пожалуйста.
Есть карта 783-М. Задача: с ЦАП выводится постоянный сигнал с частотой 400 Гц,
длительность импульса 600 мкс (5 Вольт), остальное нули.
Надо считывать на АЦП во время нулей ЦАПа данные.
Без синхронизации плавают сигналы и ЦАП и АЦП!!!
Попытался сделать по-кадровую синхронизацию, завел сигнал с ЦАПа на ТРИГГЕР.
Цифровая синхронизация СТАРТА (SynchroType=0) работает.
Но мне нужна именно по-кадровая (SynchroType=1) !!!
А при таком режиме на АЦП полная тишина.
Вот часть кода:
//ЦАП1
   pa.t1.AutoInit :=1;
   pa.t1.dRate := 0;
   pa.t1.Rate := 400;
   pa.t1.IrqEna := 1;
   pa.t1.DacEna := 1;
   pa.t1.DacNumber := $0;
   pa.t1.s_Type := L_DAC_PARAM;
   pa.t1.FIFO := FIFO;
   pa.t1.IrqStep := IrqStep;
   pa.t1.Pages := pages;
//ЦАП2
   pa.t2.AutoInit :=1;
   pa.t2.dRate := 0;
   pa.t2.Rate := 400;
   pa.t2.IrqEna := 1;
   pa.t2.DacEna := 1;
   pa.t2.s_Type := L_DAC_PARAM;
   pa.t2.FIFO := FIFO;
   pa.t2.IrqStep := IrqStep;
   pa.t2.Pages := pages;
  //АЦП
   ap.t1.s_Type := L_ADC_PARAM;
   ap.t1.AutoInit := 0;
   ap.t1.dRate := 1000;
   ap.t1.Rate := 0;
   ap.t1.dKadr := 0;
   ap.t1.SynchroType := 1;
   ap.t1.SynchroSensitivity := 0;
   ap.t1.SynchroMode := 0;
   ap.t1.AdChannel := 0;
   ap.t1.AdPorog := 0;
   ap.t1.NCh := 2;
   ap.t1.Chn[0] := 0;
   ap.t1.Chn[1] := 14;
   ap.t1.FIFO := FIFO;
   ap.t1.IrqStep := IrqStep;
   ap.t1.Pages := pages;
   ap.t1.IrqEna := 1;
   ap.t1.AdcEna := 1;
В чем проблема? Почему не работает по-кадровая синхронизация???
Очень надеюсь на Вашу помощь!

Алексей
11.11.2009 13:44:28
#2

Гость

Re: Проблема по-кадровой синхронизации L-783М

Извините! карта: 783-М

11.11.2009 16:57:44
#3

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Проблема по-кадровой синхронизации L-783М

А цап то генерирует нужный сигнал? По осциллографу  видно?

Алексей
12.11.2009 09:14:07
#4

Гость

Re: Проблема по-кадровой синхронизации L-783М

да, все генерируется, по осциллографу отслеживается. Да и цифровой старт работает отллично!

Алексей
12.11.2009 10:03:21
#5

Гость

Re: Проблема по-кадровой синхронизации L-783М

И еще вопрос: AutoInit должен стоять в каком режиме? 0 или 1?

Алексей
12.11.2009 10:25:17
#6

Гость

Re: Проблема по-кадровой синхронизации L-783М

сейчас подключили внешний генератор, все работает! так почему не хочет работать от ЦАПа?

12.11.2009 12:05:24
#7

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Проблема по-кадровой синхронизации L-783М

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

Алексей
12.11.2009 12:41:07
#8

Гость

Re: Проблема по-кадровой синхронизации L-783М

Спасибо за помощь, разобрались, заработало!!! Только теперь другой вопрос: как сделать так, чтобы АЦП работал только в определенных временных пределах при по-кадровой синхронизации? То есть, в моменты, когда молчит ЦАП.

12.11.2009 15:14:36
#9

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,495

Re: Проблема по-кадровой синхронизации L-783М

Недопонял алгоритм...
Можно  поподробнее?

Алексей
12.11.2009 16:34:07
#10

Гость

Re: Проблема по-кадровой синхронизации L-783М

Есть временной отрезок: 2.5 мс.
Первые 600 мкс ЦАП выдает импульс, по окончании которого запускается АЦП и пишет данные 1.9 мс. Работа АЦП должна закончится до начала следующего импульса ЦАП. И так по кругу.

12.11.2009 17:56:10
#11

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,495

Re: Проблема по-кадровой синхронизации L-783М

При покадровой синхронизации после прихода очередного синхроимпульса собирается один кадр отсчётов. Попробуйте поварьировать размер кадра и частоту работы АЦП так, чтобы сбор кадра занимал ~1.9 мс.

Алексей
13.11.2009 08:41:18
#12

Гость

Re: Проблема по-кадровой синхронизации L-783М

Извините, но я совсем запутался в переменных АЦП! Чем именно варьируется размер кадра? И чем отличаются эти две частоты: ap.t1.dRate := 1000;
ap.t1.Rate := 0;

13.11.2009 10:07:13
#13

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Проблема по-кадровой синхронизации L-783М

dRate это то что вы задаете как и dKadr. Rate и Kadr это расчетные коды для внутреннего использования...

13.11.2009 10:34:27
#14

Сотрудник "Л Кард"
Здесь с 24.04.2014
Сообщений: 1,495

Re: Проблема по-кадровой синхронизации L-783М

Размер кадра задаётся размером управляющей таблицы логических каналов АЦП.

Алексей
13.11.2009 11:48:39
#15

Гость

Re: Проблема по-кадровой синхронизации L-783М

А можно пример заполнения этой пресловутой управляющей таблицы на Дельфи? Извините, не силен в Си!!! И вообще, почему бы Вам не сделать один пример на Дельфи по работе с АЦП и ЦАП с нормальными комментариями, как это сделано для Си?

13.11.2009 12:56:10
#16

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Проблема по-кадровой синхронизации L-783М

А чего там пример заполнения... в структуре параметров сбора пишите в массив Chn логические номера каналов и все...

Алексей
13.11.2009 13:17:03
#17

Гость

Re: Проблема по-кадровой синхронизации L-783М

ap.t1.NCh := 2;
ap.t1.Chn[0] := 0;
ap.t1.Chn[1] := 14;

Я так понимаю таким образом? Тогда как здесь задается размер кадра?

13.11.2009 14:23:39
#18

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Проблема по-кадровой синхронизации L-783М

ну это будет кадр из 2х отсчетов снятых с 0 и 14 канала...

13.11.2009 14:25:39
#19

Сотрудник "Л Кард"
Здесь с 18.04.2014
Сообщений: 810

Re: Проблема по-кадровой синхронизации L-783М

Алексей, "NCh" = "number of channels", вот и размер кадра...

Алексей
13.11.2009 15:43:58
#20

Гость

Re: Проблема по-кадровой синхронизации L-783М

то есть:
ap.t1.NCh := 1000;
ap.t1.Chn[0] := 0;

означает, что АЦП 1000 раз подряд опросит 0 канал?

а если поставить:   
ap.t1.NCh := 1000;
ap.t1.Chn[0] := 0;
ap.t1.Chn[1] := 14;
то 500 раз 0 канал и 500 раз 14? или 1000 раз каждый?

13.11.2009 16:16:50
#21

Сотрудник "Л Кард"
Здесь с 18.04.2014
Сообщений: 810

Re: Проблема по-кадровой синхронизации L-783М

NCh - количество каналов в кадре, т.е. используемых элементов в массиве Chn[].
Их может быть, судя по описанию Lxxx (pdf), 96 штук (структура в lcomp на 128).
1000 отсчетов - это гораздо больше, чем один кадр.

Почитайте http://www.lcard.ru/download/l7xx_programmers_guide.pdf параграф 1.2.2.4 - наверное, станет понятно.

Алексей
13.11.2009 16:39:28
#22

Гость

Re: Проблема по-кадровой синхронизации L-783М

Спасибо за ответы и советы! В понедельник буду пробовать! Вот только ссылка не открылась к сожалению!

16.11.2009 12:19:06
#23

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Проблема по-кадровой синхронизации L-783М

0 - ацп  заполняет буфер один раз в pc. 1 делает это циклически. Вся синхронизация в самой плате задается - что задали то и получили...

Алексей
16.11.2009 13:06:53
#24

Гость

Re: Проблема по-кадровой синхронизации L-783М

Что значит РС?
Циклически - это в случае по-кадровой синхронизации просто включается по синхронизации или постоянно молотит не обращая внимания на синхронизацию?

16.11.2009 13:25:48
#25

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Проблема по-кадровой синхронизации L-783М

PC это комп. Драйвер о синхронизации в плате знает только в качестве информации. Он просто поток принимает или однократно в буфер или циклически, а с какой скоростью и как регулярно и по каким условиям ему все равно - это все в самой плате задается из параметров что в FillDAQ передались...