Jump to content
Sign in to follow this  
Леонид:3

Начинаю строить измерительный АЦП

Recommended Posts

Приветствую всех любителей турбореактивной тяги любителей и профессионалов:) 
Имеется АЦП 12 бит, 750 КГц, для крейта КАМАК. Но ввиду его ограничения по длине выборки в 65536 точек (для наших задач желательно больше в разы), настала пора его менять. 
В виду того что КАМАК уже устаревший стандарт у нас сейчас идет поиск решения нашей проблемы (прошу не предлагать крейты NI), глаз упал на крейты l-card, но их покупку решили оставить на попозже. 
Собственно суть, перед мною стоит задача научиться изготавливать АЦП для подключения к компьютеру. А это значит: освоить работу со скоростными интерфейсами (LVDS, PCI-e и т.п.)(ибо требования выдвигающиеся к АЦП следующие, от 14 бит и от 1 МГц, и хотелось бы получать информацию с АЦП в реальном времени). 
Вас Уважаемые я прошу подсказать литературу по данной тематике. А также подсказок в выборе интерфейсов самих микросхем АЦП и их путей согласования с интерфейсами компьютера.
P.S. Конечно такой сложный АЦП я сразу собирать не планирую, сначала научиться работать с интерфейсами, после собрать очень простенький АЦП. 
P.P.S Управлять планируется через LabView.

да, осциллографические приставки имеются, но работая через USB они крайне медленные.

Edited by Леонид:3

Share this post


Link to post
Share on other sites

@Леонид:3 , к какому "компьютеру" вы хотите

21 минуту назад, Леонид:3 сказал:

изготавливать АЦП ... получать информацию с АЦП в реальном времени

к РС под Windows?

Если так, то в вашем списке "надо освоить" вы забыли ещё один важный момент - написание драйверов.

 

24 минуты назад, Леонид:3 сказал:

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

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

Share this post


Link to post
Share on other sites
5 часов назад, Леонид:3 сказал:

сначала научиться работать с интерфейсами, после собрать очень простенький АЦП. 

короче - народная мудрость гласит - тут до АЦП, как рачки до Киева ... :)

Share this post


Link to post
Share on other sites

Конденсаторы Panasonic. Часть 4. Полимеры – номенклатура

В заключительной, четвертой статье из цикла «Конденсаторы Panasonic» рассматриваются основные достоинства и особенности использования конденсаторов этого японского производителя на основе полимерной технологии. Главной конструктивной особенностью таких конденсаторов является полимерный материал, используемый в качестве проводящего слоя. Полимер обеспечивает конденсаторам высокую электрическую проводимость и пониженное эквивалентное сопротивление (ESR). Номинальная емкость и ESR отличается в данном случае высокой стабильностью во всем рабочем диапазоне температур. А повышенная емкость при низком ESR идеальна для решения задач шумоподавления и ограничения токовых паразитных импульсов в широком частотном диапазоне.

Читать статью

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Similar Content

    • By artos5
      Приветствую всех на этом форуме!
      Есть необходимость измерять сигнал при помощи данного АЦП. С помощью этого АЦП можно измерять 4 аналоговых не дифференциальных сигнала . Схема следующая:
      Schematic_Temp_opto_sens_V2_20190817124112.pdf
      Картинками с более низким разрешением:
      библиотеку за основу взял эту:
      https://github.com/nsaspook/nidaq700/blob/master/supermoon/example/ADS1220.c
      Путем незначительного допиливания, получилась такая библиотека:
       
      Поправил только эти функции:
      void ADS1220SendByte(unsigned char Byte) { unsigned char Result = 0x01, i=0, flg=0; MOSI_LO; Delay_us(1); for(i=0;i<8;i++) { SCK_LO; //ADC_CLK=0 Delay_us(4); if (flg) MOSI_LO; Delay_us(1); SCK_HI; //ADC_CLK=1 Delay_us(1); if (Byte&Result){ MOSI_HI; flg=1; } else MOSI_LO; Delay_us(4); Result<<=1; } SCK_LO; //ADC_CLK=0 } unsigned char ADS1220ReceiveByte(void) { unsigned char Result = 0, i=0; for(i=0;i<8;i++) { Result<<=1; SCK_LO; //ADC_CLK=0 Delay_us(5); //Delay_us(5); SCK_HI; //ADC_CLK=1 Delay_us(3); if (MISO) Result++; Delay_us(2); } SCK_LO; //ADC_CLK=0 return Result; } И добавил эту функцию:
      void ADS1220Config_MUX_GAIN(uint8_t mux, uint8_t gain) { unsigned Temp; ADS1220ReadRegister(ADS1220_0_REGISTER, 0x01, &Temp); // clear prev value; Temp &= 0x0f; Temp |= gain; Temp |= mux; // write the register value containing the new value back to the ADS ADS1220WriteRegister(ADS1220_0_REGISTER, 0x01, &Temp); ADS1220ReadRegister(ADS1220_1_REGISTER, 0x01, &Temp); // clear prev DataRate code; Temp &= 0x1f; Temp |= (ADS1220_DR_600 + ADS1220_CC); // Set default start mode to 600sps and continuous conversions // write the register value containing the new value back to the ADS ADS1220WriteRegister(ADS1220_1_REGISTER, 0x01, &Temp); } ADS1220.h :
      в результате получаю такую осциллограмму :

      То есть , постоянно считывается 0.
      А вот регистры конфигурации:
      Задаю номер входа MUX и усиление :
       

       
      Читаю данные так:
      ADS1220Config_MUX_GAIN(ADS1220_MUX_0_G, ADS1220_GAIN_1); HAL_Delay(10); temp_[0] = ADS1220ReadData(); Это для 0 канала. 
      Пробовал и так:
      ADS1220SetChannel(ADS1220_MUX_0_G); ADS1220SetGain(ADS1220_GAIN_1); temp_[0] = ADS1220ReadData(); Результат аналогичный. Кто что подскажет? Может кто заметит какой косяк в коде? Уже голова дымит ..
    • By pryanic
      Доброго времени суток. Понадобилось разобраться с АЦП.  Основной материал использовал Евстифеева (микроконтроллеры семейства мега) и учебный курс Di-Halt.
      На первый раз задача простая - обработать напряжение с переменного резистора и послать по UART в терминал. С терминалом уже кое-что делал, так что тут вряд ли косяк есть.
      Кратко опишу программу: каждую секунду в обработчике прерывания таймера (не совсем точно, прерывание по переполнению Т0) запускаю преобразование АЦП установкой в 1 бита ADSC. 
      В обработчике прерывания АЦП читаю байт ADCH (выравнивание по левому краю ADLAR=1) и шлю по уарт. Но в терминал приходят одни FF независимо от положения движка потенциометра (подключен к PC1 средним контактом, крайними на землю и AVCC)
       
       
      ADC_test.zip
    • By dav1977
      Кто-нибудь запускал скоростные  АЦП  AD7606(последовательного приближения)
       в последовательном режиме считывания данных ?,
      из 4 шт одна заработала, остальные на выводе последовательного вывода DOUT ничего не выдают постоянно 0.
      пробовал переключаться с внутренним опорным источником(выдает 2.49), и с внешним без разницы.
      Может у них есть какая то очередность включения?
       

    • By dommax
      Распродаю остатки радиодеталей.
      Для удобного поиска написал WEB страничку http://detali.syremo.com.ua/
      Количество может не совпадать. Пишите - отвечу. Договоримся...
      Отправляю только по Украине. Перед отправкой смогу сделать фото.
    • By maxssau
      День добрый!
      Сегодня хотелось бы раcсказать о своей разработке - АЦП AD-01 на преобразователе от Cirrus Logic CS5381.
      Целью данной разработки было получение близких к даташитным параметрам характеристики АЦП, при этом плату имеющeю не высокую стоимость и универсальность.
      На данный момент это уже третья версия платы. Первая версия была сделана ЛУТом, для отработки схемотехники АЦП. Далее последовала вторая версия на заводских платах:

      Схемотехника была взята полностью из даташитов. Стандартное включение CS5381, стабилизаторы питания в цифровой части AMS1117-3.3, в аналоговой из серии TPS7A.
      Схемотехника входного буфера взята из даташита на OPA1632.
      После опробования данной платы, были выявлены некоторые недочеты и разработана третья версия версия:

       
      Входной буфер сделан для 2х вариантов: с конденсатором и без, для чего на ПП предусмотрены соответствующие площадки.

      Топология такого буфера позволяет без переделок проводить замеры/запись как балансного сигнала так и не балансного, достаточно вывод 3 посадить на землю (2). Это достаточно удобно, для различных типов сигнала достаточно иметь 2 пары кабелей с различной распайкой.
      Питание аналоговой части сделано на малошумящих стабилизатора TPS7A4901 и TPS7A3001.

      Питание цифровой части на 2х AMS1117-3.3В, схему нет смысла приводить, она из даташита на стабилизаторы.
      На плате всего 1 генератор на 512fs (24.576 Мгц). Такая частота выбрана не случайно, для работы SPDIF передатчика необходимо иметь частоту мастерклока не ниже 256fs для работы на частоте 96к, я использую передатчик на WM8805 (о этой плате чуть ниже). В качестве интерфейса на компьютере я использую ЗК E-MU 0404 PCIe.
      Полная схема преобразователя:

      На плате присутствует место под DIP переключатель, для настройки режимов работы АЦП. Выход АЦП - I2S, уровни 3.3В.
      Для соединения с компьютером была разработана плата SPDIF интерфейса SI-01.

      Схему приводить особого смысла нет, она повторяет даташитную для WM8805 включенным в HW режиме. В этом режиме есть определенные ограничения, связанные с работой PLL, поэтому максимальная частота приёма/передачи ограничена в 96к. WM8805 позволяет работать как в Master режиме, так и в Slave, что очень удобно. Выбор режима осуществляется установкой джампера. Так же на плате присутствуют джамперы выбора питания, от ЦАП или АЦП. В качестве выходного буфера для передатчика используется 1G125.
       
      Шумовая полка:

      В качестве источника питания пара трансформаторов с стабилизаторами 317/337, даже имея ёмкости в 10000 мкФ полностью подавть 50Гц и гармоники пока не удалось, возможно проблема в корпусе и компоновке.
      Замер моего ЦАПа на 4490, к сожалению не обошлось без земляных петель, поэтому присутствует шум на уровне -125дБ и ниже.

       
      Есть определенные особенности применения ИМС CS5381, скупо описанные в App Notes, позволяющие реализовать данную ИМС в двойном моно и теоретическим уровнем THD+N в -123дБ, что позволит производить оценку и замеры искажений у большинства современных ИМС ЦАП без режекторов.
      В проекте плата с 2мя генераторам на сетки частот 44.1 кГц и 48 кГц, АЦП включенным в моно режимах и DSP процессором ADAU1452.
      Подробную инструкцию с описание на текущую схемы и платы прикладываю.
      инструкция.pdf
  • Сообщения

    • Привет. Да, клиент)) То что дома завалялось.  Малая часть того что насобиралось за 12 лет ремонтов))
    • Я не сомневаюсь, тем более сами творец "своего счастья".  
    • @SymbiSoft А может лучше создать СВОЮ тему. Расположиться в важных темах хорошая идея, но вроде как тема чужая.  
    • Вы знаете, я сделал практическое заключение. Чем выше сопротивление наушников, тем более мягкий и сбалансированный звук. Но тут, другой нюанс, чтобы их раскачать до такой громкости как более низкоомные нужен более мощный выход. А вообще, в проф. линейке есть экземпляры 100 и даже 200 Омные. Цены на них конечно гораздо выше. А так, если учесть критерий цена-качество то предложенная выше модель где-то с 1984 года держит первенство популярности и до сих пор выпускается. За особо дешёвыми моделями не гонитель. Это выброшенные деньги. 
    • Но стабилитрон внешний ставь, всяко может быть
    • Все Решил попробовать перепроверить идею пережечь какую то хрень внутри мс. Эта мысль мной изложена была выше и тогда же писал что одна мс каким то образом заработала нормально. На регулируемом блоке питания выставил 13,8 вольт и ограничение 0,3 ампер. Прямо на плате блока питания (на котором присланные мс не запускались)  подавал кратковременно, буквально касанием щупа на 1-й вывод . На регулируемом блоке в этот момент включался режим ограничения тока. После 2-3 касаний ограничение тока прекращалось. Проверка осциллографом и светодиодной моргалкой показывала работоспособность мс. С некоторой опаской включил блок питания с "восстановленной" мс в сеть и ... блок работает, выходное напряжение есть. Таким образом "пережог" все полученные мс IR2153 и кроме 1 штуки заработали. В сетевом блоке мс проверил выборочно, работают. Некоторым мс понадобилось до 5-6 подключений внешнего напряжения. Сдохшая мс вот так долго не "пережигалась", пока не сдохла окончательно. Для информации - напряжение старт стоп не изменилось (с учетом разброса), внутренний стабилитрон похоже также не пострадал - примерно 15,5 вольт. Ток потребления также не изменился. Теперь мс у меня есть  
    • Вот то что мне нужно! Уважаемый @x-revers  не могли бы вы пояснить какие именно стоят у вас на схеме диоды и конденсаторы? И какую функцию они выполняют?
  • Покупай!

×
×
  • Create New...