реклама на сайте
подробности

 
 
> вопрос по LPC1768, посылка значений встроенного АЦП по USB
enclis_
сообщение Oct 21 2010, 18:57
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



Собственно вопрос - Имеется непереодический сигнал, который содержит в себе импульсы длительностью 1 мкс амплитудой от 0.1 до 3 В, время между импульсами произвольно, но не менее чем 1 мкс. Возможно ли с помощью LPC1768 распознать эти импульсы, измерить их амплитуду с помощью встроенного АЦП и послать эти значения (хотя бы старшие 8 бит) по USB на компьютер, где эти импульсы будут записываться в тестовый файл?

Сообщение отредактировал enclis_ - Oct 21 2010, 21:30
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 27)
rezident
сообщение Oct 21 2010, 19:20
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Нет. Импульсы амплитудой 0В распознать невозможно. Никаким существующим АЦП.
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 21 2010, 21:29
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



исправил)
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 21 2010, 21:59
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Все равно ответ - нет. Быстродействие АЦП LPC176x - 200kSPS. А для распознавания только собственно наличия импульса длительностью 1мкс, от АЦП требуется быстродействие как минимум 2MSPS. Для измерения же амплитуды нужно еще вдвое большее быстродействие. Ситуацию может упростить наличие внешнего УВХ, которое сможет "продлить" импульс, чтобы имеющийся в LPC176x АЦП успел измерить.его амплитуду.
Кстати, про амплитуду. Под амплитудой вы имеете в виду пиковое значение сигнала?
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 21 2010, 22:35
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



из документации на LPC1768 я понял, что время преобразования АЦП составляет 1 мкс. под амплитудой я понимаю пиковое значение сигнала.
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 21 2010, 23:18
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(enclis_ @ Oct 22 2010, 04:35) *
из документации на LPC1768 я понял, что время преобразования АЦП составляет 1 мкс.
Откуда вы это взяли? См. вырезки из datasheet и user manual. 13MHz/65cycles=200kSPS.
Цитата(enclis_ @ Oct 22 2010, 04:35) *
под амплитудой я понимаю пиковое значение сигнала.
Чтобы засечь пик нужно попасть на него. Для этого нужно хотя бы одно измерение "до того как" и одно измерение "после того как", чтобы понять - между ними было пиковое значение. 200kSPS дают временное разрешение не лучше 5мкс. А у вас всего-навсего 1 мкс. laughing.gif

Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
wave48
сообщение Oct 22 2010, 07:19
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 64
Регистрация: 14-07-08
Пользователь №: 38 916



Если только ставить один или несколько компараторов, пороги которых настраиваются ЦАПо, это будет как уровень триггера в осциллографе, и интегрированный сигнал подавать на АЦП. Всё зависит от того зачем нужен этот сигнал.
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Oct 22 2010, 09:02
Сообщение #8


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Может, поможет пиковый детектор со сбросом и компаратор. Компаратор сработал, сбросил пиковый детектор от предыдущего импульса, далее ждет нового импульса.


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 22 2010, 14:53
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



всем большое спасибо за разъяснения и советы! не хочется пропускать импульсы и при этом измерять их амплитуду, поэтому не буду извращаться со встроенным АЦП. Теперь такой вопрос - можно ли решить мою задачу с внешним АЦП - например, с помощью AD7278? А вообще говоря, какая должна быть скорость взятия выборок и полоса пропускания у АЦП для моей задачи?
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 22 2010, 15:26
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(enclis_ @ Oct 22 2010, 20:53) *
А вообще говоря, какая должна быть скорость взятия выборок и полоса пропускания у АЦП для моей задачи?
Это зависит от формы импульса. В общем случае ограничение Котельникова-Найквиста-Шеннона накладывается. То бишь для обнаружения импульса полоса должна быть как минимум вдвое шире 1/t, где t-длительности импульса. Если t=1мкс, то быстродействие АЦП 2/1мкс=2МSPS. Для измерения в принципе хватит такой же полосы, но нужен внешний пиковый детектор, напряжение которого сможет измерить АЦП в паузе после того, как импульс обнаружен. Если пикового детектора нет, то требования к быстродействию АЦП могут значительно увеличиваться в зависимости от формы импульса.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Oct 22 2010, 15:31
Сообщение #11


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Вы сначала решите задачу отправки полученных данных.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 22 2010, 15:37
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(DpInRock @ Oct 22 2010, 21:31) *
Вы сначала решите задачу отправки полученных данных.
ИМХО это задача второстепенная. Вначале надо определиться с аппаратной возможностью по измерению. Чтобы было измеренное "нечто", которое можно передавать потом в PC smile.gif
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Oct 22 2010, 16:04
Сообщение #13


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



USB - вещь очень определенная. Посему, она никак не зависит и не связана с чем-то другим.
Но отжирать ресурсов эта передача будет не слабо. 500К в секунду.

И вот АЦПшные дела делать уже на фоне USB.

Заодно и как отладка будет очень к месту.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Tanya
сообщение Oct 22 2010, 16:05
Сообщение #14


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(enclis_ @ Oct 21 2010, 22:57) *
и послать эти значения (хотя бы старшие 8 бит) по USB на компьютер, где эти импульсы будут записываться в тестовый файл?

А сколько импульсов Вы хотите запоминать? И ведь время, наверное? Осциллограф хотите сделать?
Раньше выпускался контроллер (ДСП) с АЦП 20 МГц. ADSP 21992 (?)... точно не помню.
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 22 2010, 16:23
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



меня тоже больше интересует USB, потому что сам я никогда не работал с ним(
Цитата
Но отжирать ресурсов эта передача будет не слабо. 500К в секунду.

500К в секунду каких единиц?
Цитата
Осциллограф хотите сделать?

Мне не нужен осциллограф, скорее самописец. мне нужно знать, что пришел импульс, когда он пришел и его амплитуду.
Цитата
Раньше выпускался контроллер (ДСП) с АЦП 20 МГц. ADSP 21992

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

Сообщение отредактировал enclis_ - Oct 22 2010, 16:27
Go to the top of the page
 
+Quote Post
Tanya
сообщение Oct 22 2010, 16:24
Сообщение #16


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(enclis_ @ Oct 22 2010, 20:23) *
меня тоже больше интересует USB, потому что сам я никогда не работал с ним(

500К в секунду каких единиц?

Мне не нужен осциллограф, скорее самописец. мне нужно знать, что пришел импульс, когда он пришел и его амплитуду.

А ширину импульса?
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 22 2010, 16:28
Сообщение #17


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



1 мкс. в самом начале писал. прямоугольной формы.

Сообщение отредактировал enclis_ - Oct 22 2010, 17:56
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Oct 22 2010, 16:45
Сообщение #18


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Цитата
500К в секунду каких единиц?

Это вы у меня спрашиваете?
Время - 4 байта, амплитуда - 1 байт. Итого 5 байт на импульс.
Максимальная частота - судя по вашим словам - 500кГц.
Итого - 2.5М\с. USB не катит. (Теор. достижимая в USB - 1.5M)

Хуже того, АЦП должен работать как заведенный на частоте не ниже 1МГц. А проц у вас 100Мгц.

Тут есть над чем подумать.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Tanya
сообщение Oct 22 2010, 17:58
Сообщение #19


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(enclis_ @ Oct 22 2010, 20:28) *

Вы так и не сказали, какова максимальная длина записи... И что потом с этой пропастью цифр делать...
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 22 2010, 18:15
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



Цитата(DpInRock)
Время - 4 байта, амплитуда - 1 байт. Итого 5 байт на импульс.
Максимальная частота - судя по вашим словам - 500кГц.
Итого - 2.5М\с. USB не катит. (Теор. достижимая в USB - 1.5M)

Там реально за 1 секунду 500к импульсов не свалятся, а только лишь 20-25к не больше, но они могут идти очень близко друг к другу, но менее 1 мкс. Извините, что завел Вас в некоторое заблуждение не написав об этом сначала.

Цитата(DpInRock)
Хуже того, АЦП должен работать как заведенный на частоте не ниже 1МГц. А проц у вас 100Мгц.

Я уже понял, что нужно использовать внешний АЦП.

Цитата(Tanya)
Вы так и не сказали, какова максимальная длина записи... И что потом с этой пропастью цифр делать...


Все это делается ради одного научного эксперимента. Максимальная длительность записи 3 часа. Все полученные данные записываются в текстовый файл или несколько текстовых файлов, а затем обрабатываются в каком-либо математическом пакете.
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 22 2010, 18:43
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(enclis_ @ Oct 23 2010, 00:15) *
Все это делается ради одного научного эксперимента.
Что-то с ЯКР связанное?
Цитата(enclis_ @ Oct 23 2010, 00:15) *
Максимальная длительность записи 3 часа. Все полученные данные записываются в текстовый файл или несколько текстовых файлов, а затем обрабатываются в каком-либо математическом пакете.
Записи на 1,25ГБайт тянут, однако. cranky.gif
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 22 2010, 19:06
Сообщение #22


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



нет, не ЯКР, хотя где-то рядом. Да, получаются большие объемы данных, но их обработать уже не проблема, самое главное не пропускать импульсы в течении этих 3-х часов.
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 22 2010, 19:32
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(enclis_ @ Oct 23 2010, 01:06) *
самое главное не пропускать импульсы в течении этих 3-х часов.
Я все же настаиваю на своем предложении - сделать УВХ и стробируемый отдельным детектором обнаружения наличия импульса (быстродействующий компаратор, грубо говоря) синхронный запуск преобразования АЦП.
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 22 2010, 23:09
Сообщение #24


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



честно говоря, плохо представляю, что Вы имеете ввиду. Объясните, пожалуйста, подробнее.
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 22 2010, 23:25
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Компаратор послужит детектором - определит наличие импульса, а АЦП, запустившись от сигнала компаратора, сделает измерение амплитуды импульса. Но для того, чтобы измерение было корректным и точным нужен пиковый детектор и устройство выборки-хранения, которое на время измерения будет "помнить" амплитуду сигнала, зафиксированную пиковым детектором во время действия импульса. Потому, что строго "прямоугольным" импульс бывает только в воображении дилетантов smile.gif То бишь, измерять нужно после окончания импульса, в промежутке между ним и следующим импульсом. Для этого и потребуется УВХ. Хотя если вам заранее известно, что импульс именно дельтаобразный и максимальная ампитуда у него в центре, то можно запускать преобразование АЦП, сделав паузу от начала импульса в 0,5мкс. Многие АЦП типа SAR содержать УВХ внутри себя.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Oct 23 2010, 00:14
Сообщение #26


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



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

Наверняка амплитуду надо знать примерно.
А время - точно.

Есть параллельные ацп, очень быстрые 6 разрядные типа AD9066.
Соединяем АЦП с портом каким-нибудь. Программируем пины на прерывание по изменению. И по первому же прерыванию - запрещаем оные и со всей силы начинаем смотреть за показаниями. Выбираем максимальное, капчурим время, и ждем когда обнулится все (Можно и нужно младший разряд не использовать....). После чего опять все разрешаем.

Если импульсов всего 25К, то просто писать их в память какую-нибудь. Естественно, передавать их куда-то при таком способе будет не так просто. Хотя и можно. Я бы передавал по UART без подтверждения. Затрат по прерываниям - никаких.
При достаточном буфере - успеет. Даже данные можно по пять раз передавать для надежности... Хотя за все время использования уартов мне ни разу не встретилась ошибка по передаче... Т.е. канал 232 с компом выглядит идеальным в практике (моей).

Сообщение отредактировал DpInRock - Oct 23 2010, 00:23


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
dac
сообщение Oct 23 2010, 13:40
Сообщение #27


Знающий
****

Группа: Свой
Сообщений: 600
Регистрация: 27-05-05
Пользователь №: 5 482



будьте проще smile.gif и люди потянутся
варианты:
1. если нужно знать время импульста то LPC однозначно не проходит, т.к. в худшем случае только поток амплитуд будет 8Мбит/с - через FSUSB не прокачаете ни LPC, никаким другим, так как еще нужны метки времени - 6байт чтоб обеспечить разрядность 1мкс за три часа, т.е. поток увеличивется до 40МБит/с
2. берете проект USBee (на казусе) - там ацп 24 мгц через HSUSB и на компе этот поток обрабатываете. только софтовую оболочку допатчиваете, вроде такая возможность есть.
3. мощный проц >300мгц с параллельной шиной на 32бит а несколькими же параллельными флэшами на шине вариант
4. если средний поток значительно меньше пикового, можно попробовать складывать данные в кольцевой буфер и оттуда отдавать через тот же FSUSB. тогда LPC1768 вполне потянет с внешним ацп. какой должен быть средний поток посчитайте сами.
Go to the top of the page
 
+Quote Post
enclis_
сообщение Oct 31 2010, 15:55
Сообщение #28


Частый гость
**

Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501



Цитата(rezident @ Oct 23 2010, 02:25) *
Компаратор послужит детектором - определит наличие импульса, а АЦП, запустившись от сигнала компаратора, сделает измерение амплитуды импульса. Но для того, чтобы измерение было корректным и точным нужен пиковый детектор и устройство выборки-хранения, которое на время измерения будет "помнить" амплитуду сигнала, зафиксированную пиковым детектором во время действия импульса. Потому, что строго "прямоугольным" импульс бывает только в воображении дилетантов smile.gif То бишь, измерять нужно после окончания импульса, в промежутке между ним и следующим импульсом. Для этого и потребуется УВХ. Хотя если вам заранее известно, что импульс именно дельтаобразный и максимальная ампитуда у него в центре, то можно запускать преобразование АЦП, сделав паузу от начала импульса в 0,5мкс. Многие АЦП типа SAR содержать УВХ внутри себя.

У меня в голове что-то такое рисуется, я правильно понимаю?

Прикрепленное изображение


Сразу вопрос по выбору компонентов OP1, OP2, T1, T2, Z1 и U2 )

Цитата(DpInRock @ Oct 23 2010, 03:14)
Сложно все. Дохлый номер ловить программно микросекундные импульсы.

Наверняка амплитуду надо знать примерно.
А время - точно.

Есть параллельные ацп, очень быстрые 6 разрядные типа AD9066.
Соединяем АЦП с портом каким-нибудь. Программируем пины на прерывание по изменению. И по первому же прерыванию - запрещаем оные и со всей силы начинаем смотреть за показаниями. Выбираем максимальное, капчурим время, и ждем когда обнулится все (Можно и нужно младший разряд не использовать....). После чего опять все разрешаем.


Идея хорошая - надо будет попробовать как будет время.

Цитата(dac @ Oct 23 2010, 16:40)
2. берете проект USBee (на казусе) - там ацп 24 мгц через HSUSB и на компе этот поток обрабатываете. только софтовую оболочку допатчиваете, вроде такая возможность есть.
3. мощный проц >300мгц с параллельной шиной на 32бит а несколькими же параллельными флэшами на шине вариант
4. если средний поток значительно меньше пикового, можно попробовать складывать данные в кольцевой буфер и оттуда отдавать через тот же FSUSB. тогда LPC1768 вполне потянет с внешним ацп. какой должен быть средний поток посчитайте сами.


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

Сообщение отредактировал enclis_ - Oct 31 2010, 16:01
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 12:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.0165 секунд с 7
ELECTRONIX ©2004-2016