|
|
  |
Вопрос по точности АЦП, насколько точен ads131 |
|
|
|
Aug 15 2016, 10:19
|
Знающий
   
Группа: Свой
Сообщений: 524
Регистрация: 25-12-08
Из: Москва
Пользователь №: 42 748

|
Добрый день, у меня такой вопрос по поводу АЦП ADS131e8 этот ацп тактируется от VCXO, который я предварительно подстроил по GPS с точностью до 10-20 нс. VCXO не только тактирует АЦП но и служит в качестве часов сверхточного времени. проблема такая: я провожу измерения этим АЦП делают СТАРТ на начале минуты и желаю получить 1000 *60 измерений за одну минуту, то есть за 1 минуту у меня должно быть записано 60000 измерений я замеряю время начала первого и начала 60001 измерения Я ожидаю, что начало 1-го и начало 60001 измерений будут отчно по началу секунды. Однако время "плывет" с чем это может быть связано? вот трассы, записанные "точным" ацп ads1282 CODE SeismicData # 1, 14-08-2016 - 23:05:00.000 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 U pow: 10107 mv Temp(164): 20.0 ºC Rev: 2 Board: 39 NumberSV: 3 Drift: 0 GPSTime: 14-08-2016 - 22:53:27 GPS pos: +554082+037294100000090 ================================================================ SeismicData # 2, 14-08-2016 - 23:06:00.000 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 U pow: 10107 mv Temp(164): 20.0 ºC Rev: 2 Board: 39 NumberSV: 3 Drift: 0 GPSTime: 14-08-2016 - 22:53:27 GPS pos: +554082+037294100000090 ================================================================ SeismicData # 3, 14-08-2016 - 23:07:00.000 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 U pow: 10058 mv Temp(164): 20.0 ºC Rev: 2 Board: 39 NumberSV: 3 Drift: 0 GPSTime: 14-08-2016 - 22:53:27 GPS pos: +554082+037294100000090 ================================================================
а вот трасса, записанная ads131 CODE SeismicDat1 # 6, 05-08-2016 - 12:05:04.053 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 GPSTime: 05-08-2016 - 11:58:07 U pow: 1224 mv T reg: 34.0 ºC Hum reg: 0.0 ºC P reg: 103497 kPa Pitch: 0.3 º Roll: -1.2 º Head: -90.7 º Lat: 453235156 º Lon: 372962437 º ================================================================ SeismicDat1 # 7, 05-08-2016 - 12:06:04.051 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 GPSTime: 05-08-2016 - 11:58:07 U pow: 1224 mv T reg: 34.0 ºC Hum reg: 0.0 ºC P reg: 103497 kPa Pitch: 0.3 º Roll: -1.2 º Head: -90.7 º Lat: 453235156 º Lon: 372962437 º ================================================================ SeismicDat1 # 8, 05-08-2016 - 12:07:04.050 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 GPSTime: 05-08-2016 - 11:58:07 U pow: 1224 mv T reg: 34.0 ºC Hum reg: 0.0 ºC P reg: 103497 kPa Pitch: 0.3 º Roll: -1.2 º Head: -90.7 º Lat: 453235156 º Lon: 372962437 º ================================================================ SeismicDat1 # 9, 05-08-2016 - 12:08:04.049 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 GPSTime: 05-08-2016 - 11:58:07 U pow: 1224 mv T reg: 34.0 ºC Hum reg: 0.0 ºC P reg: 103497 kPa Pitch: 0.3 º Roll: -1.2 º Head: -90.7 º Lat: 453235156 º Lon: 372962437 º ================================================================ SeismicDat1 # 10, 05-08-2016 - 12:09:04.048 Sample Freq: 1000.0 Hz Header size: 80 ChannelBitMap: 0x0F SampleBytes: 12 BlockSamples: 60000 GPSTime: 05-08-2016 - 11:58:07 U pow: 1224 mv T reg: 34.0 ºC Hum reg: 0.0 ºC P reg: 103497 kPa Pitch: 0.3 º Roll: -1.2 º Head: -90.7 º Lat: 453235156 º Lon: 372962437 º
вопрос в таком: ожидать ли от ADS131 что за 1 секунду на подстроенном VCXO он сделает точно 1000 прерываний или это число может измениться в любую сторону?
|
|
|
|
|
Aug 15 2016, 11:45
|
Знающий
   
Группа: Свой
Сообщений: 524
Регистрация: 25-12-08
Из: Москва
Пользователь №: 42 748

|
Цитата(Plain @ Aug 15 2016, 14:15)  Плывёт фаза, а не частота. Прерывания по определению асинхронны. почему в ADS1282 НЕ плывет а у 131 плывет?
|
|
|
|
|
Aug 15 2016, 14:30
|
Знающий
   
Группа: Свой
Сообщений: 524
Регистрация: 25-12-08
Из: Москва
Пользователь №: 42 748

|
Цитата(Plain @ Aug 15 2016, 16:30)  Разбирайтесь со схемой или опишите её нам. Исходя же из имеющейся информации, у Вас общий случай — два асинхронных тактовых, МК и ГУН — фаза будет плыть всегда. один ГУН, который тактирует ацп с частотой 2.048 МГц тики этого же ГУНа считает счетчик, который выдает прерывание каждую секунду (точные часы) или 2048000 тика так вот за одну секунду по ГУНу (2048000 тика) ацп делает не 1000 прерываний как должен а 999 с половиной или 1001. я хочу узнать в чем проблема
|
|
|
|
|
Aug 16 2016, 13:48
|
Знающий
   
Группа: Свой
Сообщений: 524
Регистрация: 25-12-08
Из: Москва
Пользователь №: 42 748

|
Цитата(Plain @ Aug 15 2016, 18:32)  Что-то не видно внешнего 11-разрядного делителя, формирующего сигнал 1 кГц для ноги "START" АЦП — разберитесь, на каком этапе и по чьей вине он потерялся. это еще что ? я стартом только запускаю измерения
|
|
|
|
|
Aug 18 2016, 10:57
|
Знающий
   
Группа: Свой
Сообщений: 524
Регистрация: 25-12-08
Из: Москва
Пользователь №: 42 748

|
Цитата(Plain @ Aug 16 2016, 17:33)  Кто "я"? Кто конкретно выдаёт 1 кГц на данную ногу АЦП и как именно — откуда он берёт эти 1 кГц, есть ли задержка, и какого она рода, между моментом, кога он её откуда-то там берёт, и тем моментом, когда он её передаёт на АЦП, и т.п.? никакх 1000 Гц на эту ногу (Старт) не подается по даташиту этой ногой производится запуск АЦП больше ничего.
|
|
|
|
|
Aug 18 2016, 22:54
|
Гуру
     
Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710

|
Ни на один процитированный Вами мой вопрос не ответили.
На данный момент смутно ясно, что Вы используете прерывный непрерывный режим преобразования, представленный в паспорте на Рис.34, а именно, непойми чем и в какой момент относительно того счётчика, который выдаёт секундные прерывания, устанавливаете сигнал "Start", после чего АЦП, согласно вышеуказанному рисунку, отсчитывает сопутствующее выбранной частоте выборок 1 ksps фиксированное время установления 4,5 мс и выдаёт первый результат, и только после этого он начинает слать сигнал готовности данных каждую мс, исходя из чего, выборок за секунду после подачи "Start" должно быть около 995, а никак не 999, и тем более не 1001.
Очевидно, Вам всего этого показалось мало, и где-то в районе этой секунды Вы передёргиваете "Start", так что вся шарманка идёт по новой, потому что в противном случае АЦП бы продолжал работать на 1 ksps и каждую последующую секунду выдавать ровно 1000 прерываний.
|
|
|
|
|
Aug 20 2016, 09:40
|
Знающий
   
Группа: Свой
Сообщений: 524
Регистрация: 25-12-08
Из: Москва
Пользователь №: 42 748

|
Цитата(Plain @ Aug 19 2016, 01:54)  Ни на один процитированный Вами мой вопрос не ответили.
На данный момент смутно ясно, что Вы используете прерывный непрерывный режим преобразования, представленный в паспорте на Рис.34, а именно, непойми чем и в какой момент относительно того счётчика, который выдаёт секундные прерывания, устанавливаете сигнал "Start", после чего АЦП, согласно вышеуказанному рисунку, отсчитывает сопутствующее выбранной частоте выборок 1 ksps фиксированное время установления 4,5 мс и выдаёт первый результат, и только после этого он начинает слать сигнал готовности данных каждую мс, исходя из чего, выборок за секунду после подачи "Start" должно быть около 995, а никак не 999, и тем более не 1001.
Очевидно, Вам всего этого показалось мало, и где-то в районе этой секунды Вы передёргиваете "Start", так что вся шарманка идёт по новой, потому что в противном случае АЦП бы продолжал работать на 1 ksps и каждую последующую секунду выдавать ровно 1000 прерываний. все, вопрос решен - проблема в микроконтролере я считал до 2048000 а нужно было до 2047999 измненил значение счетчика - все стало на свои места ацп работает правильно по времени
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|