Мне нужно измерять ток целевого MCU через различные периоды его состояния включения / выключения / выключения, а затем мне нужно отправить эти данные обратно в другой интерфейсный MCU для считывания значения. Они будут оба на одной плате с питанием от 5 В USB.
Однако это требования, которые у меня есть:
- 5 В USB БП
- Должен быть способен воспринимать токи в диапазоне от нА до мА с высокой точностью. (Я рисую 1 нА до 500 мА)
- Измеряйте только ток целевого MCU, а не интерфейс.
- Должен выдавать максимум 3.3 В интерфейса MCU
Я рассмотрел доступные варианты, и усилители считывания тока от Texas Instruments не могут воспринимать nA из-за более высоких токов смещения. Поэтому я чувствую, что мне нужен прецизионный усилитель.
Однако я застрял в том, как поступить с этим, потому что мне нужно каким-то образом иметь автоматический динамический диапазон тока, и я довольно плохо знаком с измерением тока и не совсем уверен во всех деталях.
microcontroller
current-sensing
Андреа Коррадо
источник
источник
Ответы:
TL; DR
Схема представлена на основе топологии регулятора, устойчивой к любой емкостной нагрузке, которая включает в себя диод последовательно с выходным током. Напряжение, развиваемое на этом диоде, является номинальным логарифмом тока, который позволяет измерять очень широкий диапазон тока с одним диапазоном напряжения. Отличная динамическая стабильность была продемонстрирована в симуляции.
При низком токе цепь шумная и медленная (без особого удивления). Настоящие результаты показывают около +/- 5% среднеквадратичного шума при малых токах, для времени установления 10 мкс для токов 1 мкА и выше, увеличивая до 1 секунды время установления для токов до 1 нА.
/ TL; DR
Я подозреваю, что вам не нужна высокая точность. Вы думаете, что только из-за огромного диапазона от нА до 500 мА. Очевидно, что +/- 1 нА при 500 мА потребует колоссальной точности. Я подозреваю, что +/- 10% при 500 мА одновременно с +/- 10% при нескольких нА и одном диапазоне, охватывающем оба без переключения, было бы полезно.
Первоначальная мысль, которую я изначально выдвинул в качестве предложения, показана в нижней части поста для справки.
К сожалению, это имеет роковой недостаток. Хотя он может достаточно хорошо отображать 1 нА, так как ток внезапно увеличивается, выход операционного усилителя изначально не перемещается из-за его внутренней компенсации и C1. В результате выходное напряжение на мгновение падает более чем на 1 В (это необходимо для того, чтобы ток протекал через Q1 и D1) на мгновение, что серьезно смутило бы любой микроконтроллер, подаваемый по этой линии.
«Решением» является включение в анализ емкости развязки шины MCU. Тем не менее, дополнительный C на линии MCU вызывает нестабильность, так как он шунтирует с инвертирующим входом операционного усилителя и практически не компенсируется в широком диапазоне, который мы хотим.
Поэтому следующей мыслью было «это в основном усилитель с трансимпедансом, хотя и с очень нелинейным резистором с обратной связью, как они стабильны?» Быстрый поиск привел меня к статье Боба Пиза (RAP Нэта Семи, Боб Пиз - обязательно прочитайте для любого аналогового дизайнера. Если вы не возьмете ничего из этого ответа, выкопайте и прочитайте некоторые из его материалов!)
Быстро стало очевидно, что предполагаемая емкость на инвертирующем узле операционного усилителя, хотя и большая по сравнению с pF, была очень мала по сравнению с 10 мкФ, которую мы могли бы найти в линии VCC, а высокоскоростная настройка предполагала наличие постоянного резистора обратной связи, поэтому эта топология не была началом.
Тогда я подумал, что если мы не собираемся отключать MCU при изменении тока, он должен вести себя как регулятор. Я вспомнил проблемы танталовых и керамических выходных конденсаторов у LDO. Архитектуры, которые полагаются на полумасное ЭПР тантала, чтобы быть устойчивыми, не устойчивы с керамикой. Когда топология изменяется, чтобы допустить нулевую ESR керамики, они могут допускать любое большое значение выше указанного минимума.
Чтобы справиться с большим выходным конденсатором, он должен быть доминирующим полюсом, а источник выходного тока превращает его в интегратор, сохраняя остальную часть цепи управления с фазовым сдвигом менее 45 градусов. Как только этот переворот будет выполнен, выходной конденсатор может быть любого размера больше, и LDO все равно будет стабильным. Выходной конденсатор регулятора обеспечивает полное удержание напряжения во время события изменения тока.
Теперь я искал заметки приложения LDO. Это новый дизайн в результате. Он в целом аналогичен исходному в концепции постоянного тока, но построен вокруг выходного конденсатора и использует приемы, используемые LDO, разработанными для керамики, чтобы получить достаточную стабильность.
Анализ
Q2 - это последовательное PNP-устройство, сконфигурированное с R2, чтобы быть токовым выходом. Этот конкретный тип - 1 Amp, 200 hfe 150, 50v, 400MHz ft, довольно качественная часть кулинарного качества, которая была в библиотеке LTSpice. I1 смещает его до номинального 10 мА, чтобы уменьшить дельту V, требуемую, когда внезапно требуется увеличить ток с нуля, и обеспечить существенный сток тока, чтобы справиться с внезапным уменьшением выходного тока.
D1 - наш старый друг, нелинейный элемент, через который выходной ток формирует логарифмическое напряжение. Я использовал 1n4148, как это было в библиотеке. К нему присоединяется R1, чтобы определить нижний конец текущего диапазона (10 мВ для 1 нА), D3 для улавливания обратных напряжений, когда ток внезапно уменьшается, и C2, поскольку это улучшает стабильность и выходной выброс. Обратите внимание, что если 1N4148 заменить на более мощные типы 1n400x, их более высокая емкость будет полностью поглощена C2, поэтому достаточно хорошо смоделированы для стабильности.
Я бы смоделировал TL071. Сначала я попробовал LTC1150, который имел полосу пропускания 1,5 МГц, но изо всех сил пытался получить разумную стабильность. Затем я переключился на показанный LT1022. Это немного быстрее при 8 МГц, но есть много более быстрых частей вокруг.
Сеть вокруг него включает R3 для определения 0v, C3 для стабильности и R4 для добавления нуля к C3, как предлагается в примечаниях к приложению LDO. С этими значениями, полученными в надежде и разговоре, это уже неплохо. Я уверен, что могло бы быть лучше с небольшим количеством надлежащего анализа. Вместо того, чтобы использовать еще более быстрый стабильный усилитель с единичным усилением, лучше использовать декомпенсированный.
Это, конечно, выглядит достаточно стабильным для этой цели. Любой, кто строит эту схему для использования в гневе, может найти еще немоделированных паразитов, которые снижают стабильность, но я бы посоветовал им начать с еще более быстрого усилителя, чтобы дать себе больше пространства для локтя.
I2 обеспечивает зависящую от времени текущую нагрузку для демонстрации. Как вы можете видеть из строки параметров, он развивает напряжение от 100 пА до 100 мА с временем нарастания 100 нс (поэтому изменение тока включается за один цикл 10 МГц) и обратно. Диод D2 обеспечивает удобный способ для симуляции, чтобы показать ток регистрации, и не является частью целевой схемы.
При выполнении симуляции я предпочитаю, чтобы все «действия» были около 0v, поэтому для показанных здесь рельсов -5, 0v и + 5v прочитайте 0v, + 5v и + 10v соответственно для приложения ОП.
Это общий переходный участок
Начальное значение постоянного тока выходного напряжения составляет 0,5 мВ для 100 пА, а когда я перехожу к 1 нА, оно составляет около 5 мВ, поэтому мы имеем ощутимую дискриминацию на уровне 1 нА и ниже.
При увеличении тока наблюдается небольшое превышение значения измерения.
Поворот достигает диодных пределов при уменьшении тока. Кроме того, при переключении с 100 мА на 100 пА имеется хвост считывания 20 мс, я не знаю, как это улучшить, возможно, у кого-то есть предложение. Хвост все еще присутствует при переключении на 10 нА, но при переключении на 100 нА или более, хвост отсутствует. Для этого приложения, я думаю, это нормально.
На следующих трех графиках мы рассмотрим всю важную стабильность напряжения на выходной шине.
На увеличение от 100pA до 100mA
Переходный рельсовый переход составляет всего 12 мВ, и он мертвый. Вы не найдете много коммерческих LDO, обеспечивающих такую производительность для таких насильственных текущих изменений.
и на пути обратно вниз до 100pA
Без D3 для обеспечения обратной проводимости Vmeas некоторое время будет качаться на -ve-рейку, а не на -0.6v.
Нисходящий рельсовый переходный процесс также ограничен до 12 мВ. Вы можете увидеть ограниченный по скорости нисходящий поворот, который является результатом снижения тока I1.
Я не собираюсь говорить, что это доказательство принципа, но я думаю, что это очень хорошее доказательство правдоподобности. Моделирование включает в себя множество паразитических средств, Q2 Miller C, компенсацию операционного усилителя, а также производительность, конкурирующую с LDO, я думаю, что это довольно хорошая основа для того, чтобы начать разработку чего-то, что может питать MCU при различных токах, читая через большие ассортимент.
Это показывает Vmeas в качестве вывода. Как указано в исходном посте, тепловая точность будет улучшена, если ее измерять относительно другого диода при той же температуре. Vmeas - это выход с низким импедансом, так что это очень просто сделать с простым дифференциальным усилителем.
Как и прежде, замена R1 резистором с более низким значением даст более точный линейный выходной диапазон для напряжений, для которых D1 не проводит.
Проблемы с шумом
Теперь, когда стабильная схема была разработана, мы можем начать смотреть на шум. На следующем графике показано усиление от входа операционного усилителя с конденсатором 1 нФ, установленным на C2. Кривые охватывают от 100 до 100 мА. Кривые 100 пА и 1 нА неразличимы на ярко-синем и очень близки к красной кривой 10 нА. 1 мкА - розовый, 1 мА - темно-синий, кривая 100 мА - самая низкая, как фиолетовый.
Использование имитации LnoSpice .nois и использование .measure для интеграции выходного шума в полосе пропускания от 10 мГц до 10 МГц с использованием конденсатора 33 нФ для C2 привело к относительно постоянному среднеквадратичному шуму 2 мВ для токов от 1 нА до 100 мА, с шумом, падающим при увеличении токов до 100 мкВ среднеквадратичного значения при 100 мА.
Наказанием за увеличение значения C3 было увеличение времени установления после ступенчатого снижения тока. Время в пределах 1 мВ от конечного значения составляло приблизительно от 10 мс до 1 мкА, от 60 мс до 100 нА, от 500 мс до 10 нА и от 900 мс до 1 нА.
Настоящий операционный усилитель LT1022 потребляет несколько 10 с нВ при частоте 1 кГц. В статье Боба Пиза, посвященной трансимпедансному усилителю, упоминалось, что 3nV возможен при слабом токовом входе FET, используя дискретные малошумные FET в качестве входного сигнала для композитного усилителя. Использование такого улучшенного операционного усилителя должно снизить уровень шума на порядок.
Это оригинальное предложение, для справки.
смоделировать эту схему - схема, созданная с использованием CircuitLab
Операционный усилитель подает ток через Q1 и D1, чтобы поддерживать выходное напряжение на уровне 5 В, поэтому ваш MCU всегда видит правильное рабочее напряжение.
Измеряемое напряжение между двумя диодами пропорционально логарифму отношения тока D1 к току D2. Хотя вы можете работать только с напряжением на D1, оно зависит от температуры. Этот метод использует D2 для компенсации этой зависимости.
источник
И....
Хорошо, если вы поместите резистор небольшого значения в источник питания, этот резистор не должен «падать» больше, чем, скажем, 0,1 В при 500 мА. Если оно действительно понизило значительное напряжение, то вы ставите под угрозу измерение и, возможно, заставляете целевое устройство работать при слишком низком напряжении.
Так, для 500 мА и 0,1 В требуется резистор величиной 0,2 Ом. Теперь этот резистор при питании 1 нА будет производить измерительное напряжение 0,2 нВ.
Вы видите первую проблему? На самом деле не существует дешевой и надежной технологии, которая могла бы сделать это, потому что любой операционный усилитель будет иметь шум, значительно превышающий то, что вы пытаетесь измерить, и, учитывая, что вы хотите проводить динамические измерения, требуемая пропускная способность может составлять десятки кГц, и вы будете просто измерять шум!
РЕДАКТИРОВАТЬ - журнал усилителя соображений
Если динамический импеданс нагрузки составляет 10 Ом (а не 1 Ом), то это другая история, но будет ли это возможно, учитывая вероятность 100 нФ ограничения на силовых шинах и возможное присутствие более высоких значений.
Насколько сложно будет найти операционный усилитель с таким шумом источника низкого напряжения, который имеет действительно низкие входные шумовые токи? Также помните, что для большинства операционных усилителей шумовое напряжение резко возрастает, когда частота падает ниже (примерно) 100 Гц, так что это настоящая проблема.
Таким образом, чтобы обеспечить работу логарифмического усилителя, полоса пропускания должна быть существенно ограничена, но дает ли это OP возможность адекватно измерять динамические изменения тока, когда (скажем) целевой MCU выполняет разные процедуры?
источник
Пока вам не нужно быстрое переключение усиления. Вы можете создать схему операционного усилителя TIA с реле, используемыми для переключения сопротивления обратной связи, когда вы доберетесь до верхнего и нижнего пределов диапазонов. Достижение значения выше ~ 10-30 мА является сложным для типичного операционного усилителя, поэтому о высоком диапазоне нужно немного подумать. Нужно ли ощущать биполярные токи?
источник
Измерение тока в таком широком диапазоне без значительных потерь точности требует наличия чувствительной цепи тока с регулируемым сопротивлением. Обычно это либо набор резисторов с различными значениями в паре с полевыми транзисторами, либо просто транзисторы полевых транзисторов, соединенные последовательно. Эта схема приводится в действие контуром обратной связи: при изменении измеренного тока значения резистора переключаются на регулируемое напряжение затвора FET. Agilent реализует последний метод в некоторых своих источниках питания.
источник