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


761 работа с ЦАП

Вы не вошли.

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

shmuks
17.01.2006 11:15:22
#1

Гость

761 работа с ЦАП

Задача следующая на вход АЦП подаются сигналы с датчика положения привода,
програма должна считать их, обработать и на ЦАП выдает корректирующий сигнал.
Алгоритм работы такой:
1) считал один кадр;
2) запустилась математика;
3) выдали на два ЦАПа посчитаный код.
И так в цикле.
Хотелосьбы достичь частоты 400 герц.


Я попытался решить задачу с помощью библиотеки lcomp (VS6).
Сбор данных с АЦП получился, реализован как в пример используя буфер в ОЗУ
а вот с выводом на ЦАП проблемы, я попробовал решить задачу также,
но данные из буфера ОЗУ считваются только один раз. Может я что-то путаю?
А при работе с IoAsync приходится перестартоывавть плату,иначе сбор с ЦАП останавливается.
При перезапуске платы сильно падает частота.
Буду очень благодарен за предложения по решению изложенной проблемы.

17.01.2006 13:21:53
#2

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

Re: 761 работа с ЦАП

Так устроен цап...поток есть только у 780B и 791 для цапа. А так лучше все внутрь платы запихать...

17.01.2006 15:19:50
#3

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

Re: 761 работа с ЦАП

вернее 780М

shmuks
17.01.2006 17:24:45
#4

Гость

Re: 761 работа с ЦАП

А так лучше все внутрь платы запихать...
Поясните пожалуйста,я не понял что означает вышеуказанная фраза.

17.01.2006 19:53:44
#5

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

Re: 761 работа с ЦАП

биос свой писать

shmuks
18.01.2006 12:56:18
#6

Гость

Re: 761 работа с ЦАП

Тогда пожалуйста посоветуйте какой-нибудь мануал на эту тему?

Папа Карло
18.01.2006 13:59:33
#7

Гость

Re: 761 работа с ЦАП

лучший мануал - исходники lbios + Visual DSP

Василий
21.01.2006 18:02:45
#8

Гость

Re: 761 работа с ЦАП

Т.е. динамически обновлять буфер вывода ЦАПа для платы L780revB - без вариантов. sad
А чем, собственно, отличается 780revB от 780M?

23.01.2006 07:17:08
#9

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

Re: 761 работа с ЦАП

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

Василий
23.01.2006 14:20:16
#10

Гость

Re: 761 работа с ЦАП

подскажите, плиз, а где можно почитать как это (работу напрямую с буфером платы) можно реализовать програмно?
и насколько медленно это будет работать?

а элементной базой - ф смысле сигнальный процессор другой и прошивка .bio  и драйвера соответственно, да?

23.01.2006 14:49:17
#11

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

Re: 761 работа с ЦАП

Функции там есть Put_PM/DM_array... Процессор там одинаковый а вот интерфейс к PCI другой. Ну и прерывание от ЦАП выведено.

Василий
23.01.2006 15:22:34
#12

Гость

Re: 761 работа с ЦАП

спасибо.
а на какую скорость выдачи отсчёотв на ЦАП (обновления буфера) можно расчитывать?

23.01.2006 15:44:41
#13

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

Re: 761 работа с ЦАП

экспериментально...

Василий
23.01.2006 15:52:40
#14

Гость

Re: 761 работа с ЦАП

а примерно?

Василий
23.01.2006 15:57:13
#15

Гость

Re: 761 работа с ЦАП

кто экспериментировал поделитесь, плиз, информацией.

shmuks
23.01.2006 16:42:38
#16

Гость

Re: 761 работа с ЦАП

to Poul:
Можноли динамически обновлять буфер вывода ЦАПа для платы L-761 используя функции Put_PM/DM_array ???
Ответе пожалуйста, писать свой биос намного более трудоемко, чем использовать готовое API.

Victoria
23.01.2006 18:43:43
#17

Гость

Re: 761 работа с ЦАП

2 Shmuks - насчет использования Put_PM/DM
1) В готовом API для Windows нет привязки
к сигналу прерывания заполнения кадра (в Linux API - вроде можно)
2) 400 Гц (2.5 мс) Windows точно не гарантирует, т.е. есть большая вероятность пропуска кадра.

Биос весь переписывать не придется. Все было бы достаточно просто, если не математика. Если математич. расчеты получатся на DSP, то остальная модификация lbios мелочи (по сравнению с первым).

Василий
24.01.2006 17:17:15
#18

Гость

Re: 761 работа с ЦАП

to Poul:
"23.01.06 14:49 Ну и прерывание от ЦАП выведено."
эт в каком смысле?
Насколько я понимаю, тут прерывание не при чём. Просто сигнальник должен изменять, посредством драйвера, значение переменной *sync, указывающей на текущий выведенный отсчёт в кольцевом буфере оперативки ПК.

И тут возникает вопрос: А почему нельзя было сделать работу ЦАПа аналогично работе потокового АЦП. Чтобы API для работы с ЦАП позволяли реализовывать потоковый вывод на ЦАП?

Просто не предусмотрели данную функциональность в прошивке .bio и драйвере, посчитав, что это будет не востребовано рынком (или не окупится добавление данной функциональности)? Или это принципиально было  невозможно реализовать из-за аппаратный ограничений (другого контроллера интерфейса с PCI), в отличии от L780M?

Заранее спасибо за ответ.

24.01.2006 19:47:47
#19

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

Re: 761 работа с ЦАП

от АЦП при заполнении части фифо идет перывание в PC и драйвер данные забирает. От ЦАП такого не было... просто ввели регистр состояния чтобы фильтровать источник прерывания...

Василий
24.01.2006 20:45:38
#20

Гость

Re: 761 работа с ЦАП

а почему нельзя было сделать в ADSP так называемый Пинг-понг FIFO (циклический буфер логически разделённый на две части) и по факту начала выдачи данных из одной части этого буфера по SPORTу на ЦАП формироать прерывание в PC, с тем, чтобы драйвер подгружал новые отсчёты в другую часть буфера. И т.д. подобно игре в пинг-понг smile

Ведь это улучшение (не очень вам накладное, надеюсь) в рамках поддержки и обновления microware и драйверов, так сказать новый релиз ПО,  позволило бы значительно облегчить жизнь нам, вашим клиентам, выбравшим Вас, вашу продукцию и поддержку.

И таким образом PCI плату L780B можно былобы смело
позицианировать, не тоьлко, в качестве системы сбора информации, но и выдачи. А следовательно, вцелом - возможность реализации системы управления. (путём написания на основе вашего API прикладного ПО под конкретно решаемую задачу)

Очень интересно ваше мнение.
Заранее спасибо, за рассмотрение данного пожелания  , благодарные клиенты smile

Василий
26.01.2006 18:56:25
#21

Гость

Re: 761 работа с ЦАП

не сделали Пинг-понг буфер и не завели прерыавние от ЦАП на регистр состояния и дрова не дописали... теперь у вас люди НЕ "ПРОЛАЗЯТ" по скорости... мда..

Victoria
27.01.2006 08:15:39
#22

Гость

Re: 761 работа с ЦАП

To shmuks
Poul прав - используя PutWord_PM не получится под Win обновлять код на выходе ЦАП с периодом 2.5 мс.
Вот если смягчить требования..
Вопросы для уточнения

1) Насколько сложна математика для расчета кода ЦАП?

2) Размер кадра ЦАП - 4 байта. Какой при этом размер кадра АЦП?
3) Допускается ли пропуск вывода отсчета на ЦАП? Насколько критично пропуск коррекции (т.е. на ЦАПах может оказаться код не по последнему кадру АЦП, а по предыдущему. Или еще хуже по поза предыдущим...)
4) Обязательно ли выдерживать точный период 2.5 мс? Используя информацию во внешнем кольцевом буфере АЦП можно ведь и скользяще корректировать..

Victoria
27.01.2006 08:25:26
#23

Гость

Re: 761 работа с ЦАП

Насчет документации - "Руководство по программированию сигнальных процеccоров ADSP-2100". В I-nete полно копий, можно посмотреть на сайте Autex (ссылка есть на LCard-овском сайте). Если не найдете - пришлю по почте.

shmuks
27.01.2006 11:55:10
#24

Гость

Re: 761 работа с ЦАП

1) Численное интегрирование как минимум.
2) Под размером буфера ЦАП в 4 байта я имел ввиду то что мне НЕнужно выдавать на ЦАП последовательность значений 2(ЦАПа)*2 байта, а только выставить ОДНО значение на ЦАПЫ  которое будет там установлено до окончания следующего цикла чтения и расчета.
3) Да. Не критично. Тоесть я читаю последний актуальный кадр из АЦП, считаю и выставляю значения на ЦАП.
4) Задачи разные есть, для каких-то это важно.То есть софт то в общем один, управление приводом антены, но в зависимости от скорости движения объекта зависит скорость обработки данных и передачи сигнала управления на привод.

P.S. Книжку нашел. Большое спасибо за Ваши ответы.

Victoria
27.01.2006 13:13:06
#25

Гость

Re: 761 работа с ЦАП

Вот более понятно.
1) Численное интегрирование, если не сложнее формулы Симпсона - не страшно и в DSP реализовать (суммирование в трех сумматорах по мере поступления отсчетов АЦП, умножение на 1/2/4, а коэфф. шага-множитель можно с верхнего уровня передавать для уменьшения расчетных операций).

2) Если пропуск коррекции не страшен, то можно и на верхнем уровне попробовать, или наоборот с запасом лишний раз пересчитывать код ЦАПа, используя соответсвующее скользящее окно в кольцевом буфере ПЭВМ.

Удачи!