Требуется разработать цифровой вольтметр, обладающий следующими характеристиками:
- Диапазоны измерения напряжения: ±10 В, ±1 В, ±100 mВ;
- Переключение диапазонов: ручное;
Точность измерения в диапазоне 100 мВ…10 В: не хуже 1%;
Входное сопротивление: не менее 1 МОм;
Индикация: светодиодная, семисегментная;
Напряжение питания: 5 В.
Так как входное напряжение вольтметра существенно превышает величину питающего напряжения, на входе устройства необходимо предусмотреть согласующую цепь, приводящую уровень входного сигнала к диапазону питающих напряжений. Кроме того, во входной цепи необходимо предусмотреть схему защиты от случайного подключения прибора к источникам с напряжением, значительно превышающим рабочий диапазон напряжений.
Разрабатываемый прибор предназначен для измерения только постоянного напряжения, поэтому для обеспечения лучшей стабильности показаний входной сигнал необходимо отфильтровать с помощью фильтра нижних частот.
Для обеспечения требуемой точности во всех диапазонах входных напряжений необходимо предусмотреть дополнительное усиление входного аналогового тракта с коэффициентом 10 для диапазона 1 В, и с коэффициентом 100 - для диапазона 100 мВ.
Для оцифровки входного напряжения схема должна содержать аналого-цифровой преобразователь (АЦП). При этом для обеспечения требуемой точности 1% в районе нижней границе измерительного диапазона, разрядность АЦП не должна быть меньше 10. Тогда для входного напряжения, близкого к верхней границе диапазона, точность измерения будет приближаться к 0.1%. Для нормальной работы АЦП в схеме необходимо предусмотреть источник опорного напряжения (ИОН). Кроме того, так как измеряемое напряжение может быть как положительной, так и отрицательной полярности, сигнал с выхода аналогового тракта должен поступать на схему сдвига уровня, обеспечивающую изменение сигнала на входе АЦП в диапазоне от 0 В до напряжения, генерируемого ИОН.
Для ручного переключения диапазонов измерения удобно использовать кнопку, с помощью которой при ее последовательном нажатии будет производиться переключение того или иного коэффициента усиления аналогового тракта.
Для цифрового вывода измеренного напряжения, по заданию должен использоваться семисегментный светодиодный индикатор. Для обеспечения точности не хуже 1%, необходимо и достаточно чтобы разрядность индикатора составляла три десятичных разряда. Кроме того, необходим дополнительный разряд, для вывода символа «-» (минус) в случае измерения отрицательных напряжений. Для индикации текущего диапазона необходимо также предусмотреть дополнительный светодиодный индикатор, показывающий размерность (вольты или милливольты) выводимых данных.
Поскольку аналоговый тракт должен содержать усилители и работать с двуполярным сигналом, функциональная схема дополняется устройством, генерирующим отрицательное питающее напряжение, которое необходимо для нормальной работы операционных усилителей аналогового тракта.
Для организации автоматической работы устройства в целом, а именно - поддержки переключения диапазонов, обеспечения работы АЦП, преобразования полученного кода и вывод данных на индикатор - функциональная схема должна содержать устройство управления.
Функционально входную согласующую цепь удобно совместить с устройством
защиты, входным фильтром нижних частот и схемой сдвига уровня для диапазона ±10
В. Усилители с коэффициентом усиления 10 и 100 удобно совместить со схемами
сдвига уровня для диапазонов ±1 В и ±100 мВ. Таким образом, функциональная
схема может иметь вид, изображенный на рисунке 1.
Рисунок 1 - Функциональная схема цифрового вольтметра
где: ВУ - входное устройство, осуществляющее деление входного сигнала, защиту схемы от перенапряжений, фильтрацию и сдвиг уровня для диапазона 10 В;
У1 - усилитель для диапазона 1 В и схема сдвига уровня;
У2 - усилитель для диапазона 100 мВ и схема сдвига уровня;
М - мультиплексор, осуществляющий подключение сигналов аналогового тракта к входу АЦП;
АЦП - аналого-цифровой преобразователь;
ИОН - источник опорного напряжения;
КД - кнопка выбора диапазонов;
УУ - цифровое устройство управления;
И1 - четырехразрядный семисегментный индикатор;
И2 - светодиодный индикатор для определения размерности выводимых данных;
ИН - инвертор напряжения, предназначенный для преобразования питающего напряжения +5 В в напряжение -5 В для питания усилителей.
В современных малогабаритных цифровых приборах обычно в качестве устройства управления используют микроконтроллер. При этом стараются подобрать модель таким образом, чтобы его периферийные устройства использовались в максимальной степени и наиболее полно замещали функциональные узлы, предусмотренные в разработанной структуре устройства. Немалую роль в выборе той или иной модели микроконтроллера играют такие характеристики, как быстродействие, энергопотребление, объем встроенной памяти программ и данных, его цена. Кроме того, немалое значение следует уделить наличию или доступности инструментальных средств, таких как трансляторы, отладчики, программаторы. Для решения поставленной задачи хорошим выбором является AVR-микроконтроллер типа AT90S8535 фирмы Atmel, так как он содержит в своем составе следующие блоки [1]:
- Flash-памяти программ объемом 8 килобайт;
- ОЗУ объемом 512 байт;
- EEPROM-память данных, объемом 512 байт;
один 16-битный и два 8-битных таймера-счетчика;
последовательный интерфейс UART;
последовательный интерфейс SPI;
10-битный 8-канальный АЦП;
аналоговый компаратор;
четыре 8-битных порта ввода/вывода.
Индикаторы И1 и И2, изображенные на рис.1. могут подключаться к портам контроллера, настроенным на режим вывода данных. Переключатель диапазонов КД может подключаться к линии какого-либо порта, настроенного на ввод с включением внутреннего подтягивающего резистора. В схеме с успехом может использоваться встроенный 10-ти битный АЦП, а в качестве мультиплексора М может выступать порт РА микроконтроллера.
Так как для данного устройства не требуется высокой производительности,
тактирование микроконтроллера можно осуществлять от кварцевого резонатора с
частотой 1 МГц.
Микроконтроллер AT90S8535 не имеет встроенного источника
опорного напряжения, и поэтому необходимо, чтобы эту роль выполняла внешняя
дополнительная микросхема. По техническим требованиям для микроконтроллера
напряжение на его входе AREF,
используемого в качестве опоры встроенного АЦП, не должно превышать напряжения
питания, то есть 5 В в данном случае. Поэтому в качестве источника опорного
напряжения можно выбрать микросхему REF198 фирмы Analog Devices с напряжение стабилизации 4.096 В
[2].
Инвертор напряжения предназначен для выработки напряжения -5 В,
необходимого операционным усилителям, входящим в состав блоков ВУ, У1 и У2
(рис.1). В этом качестве может выступить микросхема ADM660 фирмы Analog Devices [3].
Данная микросхема совместно с двумя внешними конденсаторами, емкостью 10 мкФ,
вырабатывает напряжение, инверсное по отношению к своему питающего напряжения.
При этом питающее напряжение микросхемы может находиться в диапазоне от +1.5 В
до 7В. Микросхема может обеспечить ток в нагрузке до 20 мA. Включение микросхемы - стандартное,
рекомендованное фирмой-изготовителем.
Как уже было сказано выше, входное устройство должно обеспечивать следующие функции:
- делить входной сигнал так, чтобы его уровень по абсолютному значению, по крайней мере, не превосходил питающее напряжение ±5 В;
- защищать входные цепи от перегрузок в случае подключения высокого напряжения к входу вольтметра;
фильтровать входной сигнал, то есть выступать в качестве фильтра нижних частот;
смещать входной сигнал в область положительных напряжений так, чтобы весь диапазон изменения входного напряжения ±10 В укладывался в диапазон рабочих напряжений АЦП: 0 …4,096 В.
Устройство, обеспечивающее все эти функции, может быть реализовано по
схеме, изображенной на рисунке 2.
Рисунок 2 - Схема входного устройства
Каскад на операционном усилителе DA1 построен по схеме инвертирующего усилителя. Известно, что коэффициент передачи такой схемы определяется как K=-R3/R1, а ее входное сопротивление равно R1. Если выполняется условие R1>R3, то коэффициент передачи становится меньше 1. Таким образом, можно получить входной делитель напряжения с высоким входным сопротивлением и очень малым выходным. Кроме того, ОУ в схеме инвертирующего усилителя работает без синфазной составляющей напряжения на его входах, что дает возможность преобразовывать входное напряжение U1, значительно превышающее напряжение питания ОУ.
В том случае, если ток инвертирующего входа ОУ, протекающий через высокоомные резисторы R1 и R3, вызывает заметное падение напряжения, необходимо компенсировать это смещение с помощью резистора R2, равного сопротивлению параллельно соединенных резисторов R1 и R3.
Диоды VD1 и VD2 служат для защиты входа от перегрузки высоким входным напряжением. В том случае, если входное напряжение находится в штатном диапазоне, операционный усилитель DA1 работает в активном режиме, отрицательная обратная связь замкнута, поэтому потенциал инвертирующего входа практически равен нулю. Поэтому диоды заперты, и их присутствие не влияют на работу схемы. Если высокое напряжение U1 выводит DA1 в режим насыщения, обратная связь не поддерживается, и напряжение на инвертирующем входе ОУ начинает расти. Однако при достижении значения примерно 0.7 В (порог открытия кремневых диодов) это напряжение стабилизируется, что предотвращает опасную ситуацию увеличения напряжения на входе усилителя сверх напряжения питания.
Конденсатор, включенный в обратную связь ОУ, ограничивает частоту пропускания каскада на уровне F=1/2πR1C3, таким образом, все устройство приобретает свойства фильтра нижних частот.
Схема сдвига уровня реализована на резисторах R4 и R5.
Выходное напряжение устройства U3
можно определить по формуле
U3=(U2*R5+Vref*R4)/(R5+R4),
где Vref - опорное напряжение АЦП.
Если выполнить условие R4=R5, это выражение примет вид:
U3=(U2+Vref)/2.
Таким образом, если напряжение U2 будет меняться в пределах от -Vref до +Vref, это вызовет изменение U3 в пределах от 0 до +Vref, что и требуется для согласования выходного двуполярного сигнала U3 с диапазоном входных напряжений АЦП.
Заданная в исходных данных погрешность измерения вольтметра, равная 1%, практически полностью определяется использованием 10-битного АЦП, поэтому входной аналоговый тракт должен вносить погрешность во много раз меньшую. Для этого в схеме необходимо использовать прецизионный операционный усилитель и точные резисторы. В качестве операционного усилителя здесь может быть использована микросхема ОР177 фирмы Analog Devices. Этот усилитель обладает отличными точностными характеристиками [4]: сверхнизким напряжением смещения нуля <25 мкВ, малым входным током < 1.5 нA, очень высоким коэффициентом усиления >107, низкой стоимостью.
Так как входное сопротивление по условию должно быть ≥ 1 МОм, а входное сопротивление каскада равно R1, зададим R1=1 МОм. Выбор большего номинала R1 приведет к возрастанию выходного смещения DA1 за счет протекания входного тока ОУ через резисторы R1 и R3.
Зададим требование, чтобы при максимальном значении входного напряжения, равного 10 В, напряжение U2 было бы близким к опорному напряжению Vref=4.096 В, но несколько меньше этого значения. Примем эту величину, равной 4.09 В. Тогда коэффициент передачи каскада будет равен К=4.09/10=0.409.
Отсюда отношение резисторов R1/R3 должно быть равно 2.445. Следовательно, R3=K*R1=409 кОм. Резисторы R1 и R3 должны быть прецизионными, поэтому их значения необходимо выбирать из ряда номиналов E192. Тогда R1=1МОм, а R3=407 кОм.
Протекание входного тока ОУ, равного 2 нA, через резисторы R1 и R3 вызовет смещение выхода на значение
U0=Iвх*R1*R3/(R1+R3)=2*10-9*1*0.407*106/(1+0.407)=0.58
мB.
Это величина значительно превышает статическую ошибку, определяемую
собственным напряжением смещения (25 мкB). Поэтому для ее компенсации сопротивление резистора R2 должно быть
R2=R1*R3/(R1+R3)=1*0.407/(1+0.407)=289 кОм.
Так как резистор R2 не определяет коэффициент передачи устройства, его номинал может быть выбран из ряда Е24. Округляя рассчитанное значение до стандартного, получим R2=300 кОм.
F=1/2πR1C3=1/(2*3.14*0.407*0.33)=1.2 Гц.
Номиналы резисторов R4 и R5 должны быть не слишком малыми, так как это приведет к значительной нагрузке выходов DA1 и источника опорного напряжения, и не слишком высокими, так как это ведет к увеличению шумов и нестабильности результатов оцифровки. Оптимальным следует считать максимальный ток, протекающий через резисторы сдвига уровня, равным нескольким сотням микроампер. Поэтому примем сопротивление R4 и R5 равным 10 кОм. Заметим, что эти резисторы также должны быть прецизионными.
Для анализа эффективности работы схемы защиты рассмотрим случай, когда к
входу прикладывается напряжение, равное 200 В. Тогда ток, протекающий через
резистор R1, определится как I=200/1 = 200 мкА (падением напряжения
на защитных диодах пренебрегаем). В этом случае мощность, рассеиваемая на
резисторе R1 составит P=200 В * 200 мкА = 40 мВт. Эта величина является более чем
приемлемой.
Усилители для диапазонов 1 В и 100 мВ могут иметь одинаковую схему, но
отличаться коэффициентом усиления. Так как отношение значений границ диапазонов
равно 10 для канала 1 В и 100 для канала 100 мВ, коэффициенты усиления
усилителей также должны быть 10 и 100 соответственно. Кроме того, усилители
должны быть неинвертирующими для того, чтобы обработка кода АЦП для разных
каналов была бы единообразной. Поэтому эти усилители могут быть собраны по
схеме, приведенной на рисунке 3.
Рисунок 3 - Схема усилителей каналов
Коэффициент усиления данной схемы определится как K=1+R2/R1. Резисторы R3 и R4, так же как и для схемы на рис.1 смещают выходное напряжение ОУ в положительную область на величину Vref/2. Также как и в предыдущей схеме R3=R4=10 кОм.
В качестве операционного усилителя можно использовать ОР177.
Отношение R2/R1 для канала 1 В должно составлять 9,
а для канала 100 мВ соответственно 99. Резисторы R1 и R2
должны быть прецизионными и их номиналы следует выбирать из ряда Е192. Для того
чтобы делитель R1 и R2 не сильно нагружали выход DA1, с одной стороны, и не вызывали
смещения выходного напряжения за счет протекания входных токов ОУ,
сопротивление R2 должно быть порядка десятков или
сотен килоом. Тогда выбираем R2=18кОм
и R1=2кОм для коэффициента усиления 10,
и R2=198кОм и R1=2кОм для коэффициента усиления 100.
Как было обосновано ранее, устройство должно содержать трехразрядный семисегментный светодиодный индикатор. Выберем для этих целей индикаторы красного свечения с общим анодом. Для того чтобы не использовать большое количество портов ввода-вывода микроконтроллера удобно использовать принцип динамической индикации. В этом случае одноименные катоды всех индикаторов через токозадающие резисторы подключаются к каком-либо порту микроконтроллера, например к порту C. Включение того или иного индикатора осуществляется подачей на аноды выбранного индикатора напряжения, близкого к напряжению питания. Подключение анодов необходимо осуществлять через транзисторные ключи, так как одна линия порта микроконтроллера не способна запитать все восемь светодиодов индикатора. Подключить индикатор можно так, как это показано на рисунке 4.