Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Измерительная техника >

RLC измеритель "BALMER 303"

Автор: balmer, balmer@inbox.ru
Опубликовано 29.07.2014.
Создано при помощи КотоРед.

Введение

Прежде всего - спасибо радиокотам bob1, Galizin, Леонид Иванович. Без них железка получилась бы сильно хуже.

Измерение RLC очень интересная тема, а сайте Radiokot есть множество статей по этому поводу. Лично мне очень приглянулся RLC STM32F100C4. Отличные параметры. Широченный диапазон измерения. Современная элементарная база. "Наконецц-то!" подумал я, в кои то веки можно просто скопировать прибор и радоваться его работоспособности. Однако любовь все делать самому и желание сделать лучше перевесили.

Перво-наперво захотелось применить STM32F303 микросхему. STM32F303VCT6 стоит 211.50 руб. что соовсем не дорого. Но у нее есть суперфича «Up to 4x ultra-fast 12-bit ADCs with 5 MSPS». Это значительно быстрее, чем 1 MSPS, вставляемых в боле дешевые чипы. Вобщем мегакруть, которой так и хочется воспользоваться. Причем, что приятно - можно запустить несколько ADC параллельно от одного таймера. Это позволяет необычайно точно определять фазу сигнала.

Другое изменение - это виртуальная земля Vref. На оригинальной схеме на выходе операционного усилителя являющегося виртуальной землей нет ни конденсаторов, ни других способов сгладить пульсации, которые могут проникать от нескольких потребителей опорного напряжения.

Третья проблемма - это низкое питающее напряжение операционных усилителей. Rail-to-Rail это конечно круто, но неужели он не вносит никаких искажений? Забегая вперед могу сказать, что Rail-to-Rail режим ОУ таки вносит искажения и достаточно существенные.

Еще одна проблемма DA2:1 DA2:2 - это усилители находящиеся в одном корпусе. На краях диапазона на входе DA2:2 сигнал в десятки микровольт. А на выходе DA2:1 - целых 300 милливольт напряжение.

Чтож. Лично мне не жалко лишних нескольких сотен рублей на качественные ОУ. Поэтому выбирал из того что было в продаже, но при этом не самое плохое. Вместо инструментального усилителя на "рассыпухе", возьмем готовый инструментальный усилитель. Это будет AD8121 (144 руб./шт.). Вместо оконечного усилителя, возьмем MSP6S21 (38 руб./шт.) - это усилитель с "изменяемым коэффициэнтом усиления" Вместо переключения одного усилителя на I/V каналы сделаем просто два канала, и будем синхронно выбирать данные с них! Для того, чтобы избежать проблемм с нестабильным питанием по виртуальной земле - сделаем виртуальную землю отдельной для каждой микросхемы. А для того, чтобы уменьшить нелинейные искажения - повысим напряжение питания у аналоговой части (у меня это стабилизированные 5 Вольт). Да, и выкинул подстройку смещения напряжения за ненадобностью.

Все эти изменения были небольшими, однако довольно существенно повысили точность прибора. Входная емкость без щупов получилось меньше 2 pF. Входное сопротивление больше 300 МОм. После сборки прибора без всякой калибровки у меня получилась точность лучше 1% на частотах 100 Гц - 1 КГц в диапазоне 1 Ом-100 КОм.

Внешний вид

Собранная железка выглядит так:

Да, знаю корпуса мне еще учиться и учиться делать. Но с защитой от внешних воздействий справляется даже кусок от вентиляционной пластиковой трубы.

 

Сверху финальная версия, снизу - промежуточная. Платы выглядят несколько неопрятно из-за безотмывочного флюса, однако на характеристики прибора это не влияет. Сопротивление между щупами больше 300 MOm, что более чем достаточно.

Заявленные параметры.

  • Частоты измерения от 100 Гц до 250 КГц.
  • измеряемые сопротивления от 10 мОм до 10 МОм c точностью ±10%
  • измеряемые сопротивления от 10 Ом до 300 КОм с точностью лучше 0.5 %
  • точность определения фазы комплексного сопротивления порядка 0.2 градуса
  • разрешающая способность 1 мОм, 0.001 pF, 1 nH
  • USB интерфейс. Возможность сканировать диапазон на разных частотах, запись графиков на компьютер.


Частота измерения от 100 Гц до 250 КГц. Точные измерения гарантируются только на частотах от 100 Гц до 150 КГц. Без связи с компьютером есть 5 частот измерения 100 Hz, 1 KHz, 10 KHz, 93.75 KHz, 187.5 KHz. При подключении к компьютеру есть возможность измерять на 160-ти разных частотах в диапазоне 100 Гц - 250 КГц.

Точность измерения конденсаторов примерно такая же, как и точность измерения сопротивлений. Точность измерения катушек индуктивности ±1% в типичном случае. И имеет кучу особенностей.

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

При измерении конденсаторов есть другая особенность. У многих конденсаторов емкость сильно зависит от температуры. Так, что если вы подключили конденсатор, а показания все меняются и меняются - не спешите ругать прибор. Возможно вы просто нагрели конденсатор рукой, он остывает и емкость растет.

Аналоговая часть.

 

Схема в pdf.

Аналоговая часть построенна по класическому рецепту для RLC измерителей. Сигнал от DAC поступает на пин GENERATOR. После этого стоит ФНЧ на R2 C2 300 КГц, или на R2 C7 3 КГц. В качестве "твердотельного реле" используем SN74LVC1G3157DBVR. IC1 - обычный повторитель для умощнения сигнала. К коннектору X1 подключаются щупы Кельвина. На IC2/IC3 построен I/V конвертор по классической схеме. IC4/IC5 - инструментальные усилители с КУ=3.74. Далее идут разделительные конденсаторы С10, С14. Небольшой коэффициэнт усиления в инструментальных усилителях и разделительные конденсаторы сразу после них позволяют избавиться от проблемы (в моем случае исключительно теоретической) с небольшим постоянным напряжением между щупами X1-2, X1-3. Даже если предположить, что разница будет аж целый 1 мВ (в реальности она меньше), то этот 1 мВ всеголишь услилится в 3.74 раза и никакого влияния не окажет на стабильность работы схемы. Далее идет ФНЧ на резисторах R1 C15 и R3 C13. Эти ФНЧ введены уже по результатам экпериментов, так как без них при максимальном коэффициэнте усиления схема банально принимает радиостанции средневолнового диапазона. Далее идут U$2, U$4 - усилители с программируемым коэффициэнтом усиления от 1x до 32x. Так что общее усиление тракта изменяется от 3.74 до 119 - этого вполне хватает, чтобы перекрыть диапазон сопротивлений от 1 мОм до 100 МОм.

На IC6, IC7 - организованна "виртуальная земля". Достаточно сложная конструкция нужна для того, чтобы избежать проникновения сигнала между каналами, а также проникновения сигналов из оконечных каскадов к начальным. Причин тому несколько, например проникновение даже 10 мкВ сгинала на положительный вход IC3 в I/V конверторе очень сильно повлияет на измерение больших сопротивлений и малых емкостей. На выходе каждой из "виртуальных земель" на IC6, IC7 стоии "snubber network". Специальная система подавляющая колебания из-за нестабильности нагрузки. И это действительно важно, особенно для питания PGA U$2, U$4. Дело в том, что в MCP6S21 стоит достаточно низкоомный резистор в системе обратной свызи (5 КОм примерно), это позволяет данному усилителю иметь достаточно точный КУ на высоких частотах, но создает дополнительную нагрузку на "виртуальную землю".

Все резисторы с точностью 1%. Скорее всего будет работать и с 5%-ми резисторами, но я не проверял. Потому как купил пак 1%-х резисторов и пользуюсь им. С 1%-ми резисторами кстати сразу получается точность измерения порядка 1% на частотах 100 Гц-5 КГц. На более высоких частотах без калибровки щупов обойтись нельзя.

 Цифровая часть.

Схема в pdf.

Основой схемы является микроконтроллер STM32F303 в LQFP100. Серия 303 хороша быстрыми ADC, которые могут работать в синхронном режиме. Мы запускаем ADC на 3 MSps, это позволяет измерять достаточно быстро и точно.

USB разъем X1 позволяет общаться устройству с компьютером. Используя компьютер можно измерять параметры, проводить сканирование разных частот и строить графики. А также позволяет калибровать устройство. Есть два варианта питания устройства. Можно подключить батарею 6 V к разъему X8-1, X8-2. Либо можно замкнуть X8-3, X8-4, тогда питание будет происходить от USB разъема. Разъем DISPLAY-1 подключается к дисплею на основе контроллера PCD8544 от Nokia 5110 разрешением 84x48. Разъем X2 ни к чему не подключен, и нужен для фиксации дисплея. Разъем X4 переключает резисторы на аналоговой схеме. X6-3, X6-4 служит для питания аналоговой части схемы. X6_2 (GENERATOR) - выход DAC. X6-1 - переключает ФНЧ на 3 КГц либо 300 КГц. Разъем X7 подключается к колесику от средней кнопки "мыши". X9 - стандартный SWD разъем для программирования микроконтроллера. X11-1, X11-2, X11-3, X11-4 - разъем для переключения коэффициэнтов усиления на MCP6S21. X11-5, X11-6 - входы ADC.

Вобщем ничего на цифровой части схемы нет, кроме питания и разъемов коммуникации. Единственное перенес конденсаторы C14, C15 от ФНЧ на цифровую часть схемы, поближе к входам ADC. это несколько уменьшило уровень помех.

Калибровка.

Для калибровки прибора запускаем на компьютере скрипт xyinamain.py Чтобы он запустился необходимы сторонние, но очень распространенные библиотеки PyQt4, matplotlib, numpy и libusb .

Под Mac Os X и Linux драйверов не требуется. Под Windows придется поставить драйвера для libusb и прописать в них VID=0x16C0 PID=0x05DC. 

Выбираем пункт "Калибровка"

Если в папке xyina/cor/ будут данные о калибровке щупов, то везде будет написанно "Пройден". Если папка будет пустая, то везде будет написано "Не пройден".

Калибруем резисторами 1 Ом, 100 Ом, 1 КОм, 10 КОм, 100 КОм. А также при открытых и замкнутых щупах. Если нет точных резисторов, то можно применить какие есть ±10% номиналом, но тогда надо их измерить точным мультиметром и это значение вписать в поле для редактирования.

Появится окошко с "progress bar". И наберитесь терпения! Значение резистора измеряется на 160-ти разных частотах, а так-же при нескольких комбинациях усиления и резисторов. Так-что суммарное время калибровки порядка получаса.

После этого можно нажать кнопку "Записать в FLASH", и тогда данные для частот, которые может измерять прибор автономно, перепишутся в FLASH прибора.

 Интерфейс прибора.

Управление производится колесиком от мышки и кнопкой от колесика мышки. Нажатие кнопки - вход в меню, повторное нажатие - выбор пункта меню. В левом верхнем углу - частота измерения. Сверху в центре - SER/PAR эквивалентная схема замещения "Serial/Parallel". Далее - заряд батареи. Батарея считается полностью разряженной по достижении порога 5.5 V. Две строчки с крупными буквами - основные измеряемые параметры. Сверху всегда вещественная часть сопротивления. Снизу - мнимая часть сопротивления, либо L/C параметр. Снизу после D= отображается тангенс угла наклона. Далее R0V7I0 - дебаговая информация. Цифра после R означает сопротивление 0 - 100 Ом, 1 - 1 КОм, 2 - 10 КОм, 3 - 100 КОм. Цифры V7I0 - коэффициенты усиления PGA (1,2,4,5,8,10,16,32) для каналов напряжения и тока соответственно.

Построение графиков.

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

Вот например банальность - измерение сопротивления 200 Ом 0.1%:

Что-то слишком ровно, смотрим в увеличении:

Это сопротивление, да еще и в "центральном" диапазоне. Поэтому если отбросить измерение на частоте 250 КГц, то с большим запасом укладываемся в тоность 0.1%

А вот как выглядит изменение комплексного сопротивления для первичной обмотки трансформатора 220 V.

Вот тут уже график позволяет нам увидеть резонанс индуктивности с паразитной емкостью. Для динамиков/наушников получаются еще более забавные графики. Потому как в них куча паразитных резонансов.

Файлы проекта.

Так как проект получился достаточно большим и сложным - исходные файлы лежат на странице проекта в Mercurial репозитории на сайте Google Code. Там есть еще чутка документации, например сравнение параметров с другими приборами.

Прикладываю только текущую откомпилированную версию прошивки.


Файлы:
Прошивка для микроконтроллера


Все вопросы в Форум.


Как вам эта статья?

Заработало ли это устройство у вас?

60 4 4
3 1 0