Занимательная микроэлектроника — страница 50 из 117

Источник тока вмсте с конденсатором в данном случае образуют так называемый ГЛИН— генератор линейно изменяющегося напряжения. Схему можно упростить, если в качестве источника стабильного тока поставить простой резистор, питающийся от стабильного источника напряжения, но, т. к. форма кривой нарастания напряжения при этом не линейная, а экспоненциальная (см. рис. 2.9, б), то придется ограничиться небольшим диапазоном входных напряжений, где форма кривой еще близка к прямой линии. На практике так часто и поступают, поэтому источник тока я подробно не рисовал.

У схемы по рис. 10.4 множество недостатков и единственное достоинство — простота. При взгляде на нее непонятно, чего это я распинался насчет супервысоких характеристик интегрирующих АЦП. Главным недостатком однократного интегрирования является то, что результат преобразования тут зависит от всего на свете: от стабильности источника тока, ГЛИН (и каждого его элемента в отдельности, в первую очередь, конденсатора), порога компаратора, от неидеальности ключа для сброса и т. п. Еще хуже то, что схема в данном варианте срабатывает от мгновенного значения входного сигнала и потому весьма восприимчива к его дребезгу и вообще любым помехам. Если тактовая частота случайно окажется кратной частоте помехи (в первую очередь сетевой с частотой 50 Гц), то мы вообще можем получать каждый раз значения, весьма далекие от истины. (В теории добиться полной некратности частоты измерения и помехи можно только, если сделать тактовую частоту изменяющейся по случайному закону. Так как отношения обычных чисел всегда образуют периодическую дробь, то на выходе такого АЦП мы получим биения выходной величины с частотой повторения периода этой дроби.) В то же время преобразование длится все равно достаточно долго, т. к. обычные значения тактовой частоты, при которых схема еще работает приемлемо, лежат в диапазоне максимум десятков килогерц (если, конечно, специально не использовать быстродействующие компараторы и логику).



Рис. 10.4.АЦП однократного интегрирования


Можно несколько улучшить такой АЦП: достаточно подать измеряемое напряжение на вход ГЛИН, а опорное— на компаратор. Тогда сигнал будет интегрироваться за время преобразования, причем интегрироваться очень точно, мы будем получать истинное среднее арифметическое значение сигнала за это время. Правда, сама функция преобразования при этом окажется обратной, т. е. время заряда (и значение выходного кода на счетчике) будет обратно пропорционально значению входного напряжения. Это неудобно, поскольку сильно усложняет обработку результата. По всем этим причинам АЦП с однократным интегрированием, несмотря на его простоту, в настоящее время не употребляют вообще и даже не выпускают в виде специализированных микросхем.

Заметки на полях

Единственное известное мне массовое применение АЦП, построенного именно по приведенной примитивной схеме (и при этом вполне справляющегося со своими обязанностями) — это схема считывания координат положения рукоятки джойстика на входе игрового порта ПК. Правда, я очень не уверен, что эта схема в современных материнских платах в действительности осталась той же, какой ее сделали еще в начале 80-х (впервые — в малоизвестной «домашней» модели IBM PC под названием PCj), но интерфейс для внешнего мира остался тем же.

Самое интересное, что все перечисленные недостатки можно преодолеть, как говорится, одним махом, путем небольшого усложнения схемы. Интегрирующие АЦП не получили бы такого распространения и заслуженной репутации «самых стабильных», если бы не это обстоятельство.

Идея метода, который называется двойным (или двухстадийным) интегрированием, показана на рис. 10.5.



Рис. 10.5.Цикл работы АЦП двойного интегрирования:

1 — идеальный случай;2 — при сдвиге порога компаратора; 3 — при изменении емкости конденсатора


Посмотрим сначала на график, обозначенный цифрой 1. В первую часть цикла работы за фиксированное время такта t2t1 конденсатор интегратора заряжается током, который определяется входным напряжением Uвх. Во второй части этот конденсатор разряжается точно известным током, определяющимся опорным напряжением Uоп, до момента t3, когда напряжение становится равным нулю. Чем больше входное напряжение, тем до большей величины зарядится конденсатор в первой части, и тем дольше он будет разряжаться во второй. Легко показать, что отношение интервала времени t3t2 к известному времени такта t2t1 будет равно отношению входного напряжения Uвх к опорному Uоп. Таким образом, измерив полученный интервал времени t3t2 обычным методом с помощью счетчика, как это сделано в схеме на рис. 10.4, мы получим на выходе код, пропорциональный входному напряжению.

На самом деле напряжение, до которого разряжается конденсатор, задается порогом компаратора и может в общем случае быть отличным от нуля на величину δ за счет «гуляния» порога, например, при изменении температуры. Но так как следующий цикл измерения начнется в точности с того же значения порога, то, как вы видите из графика 2, в данном случае имеет значение только изменение порога за время преобразования, которое обычно не превышает долей секунды. На результате не скажется и изменение емкости конденсатора (при тех же условиях), т. к. при этом наклон прямой и заряда и разряда изменится в одинаковой степени (график 3). В самых точных АЦП такого типа дополнительно проводят цикл «автокоррекции нуля», когда на вход подают нулевое напряжение и результат потом вычитают из значения кода, полученного в рабочем цикле. Мало того, здесь даже не требуется «кварцованная» частота и в теории всю схему можно «заводить» от любого RC-генератора— при условии, что время такта t2t1 и частота заполнения «ворот» для подсчета длительности результирующего интервала t3t2 задаются от одного и того же генератора.

Но чудес не бывает— точность и стабильность преобразования здесь полностью определяются точностью и стабильностью значения Uоп. Это общее условие для всех без исключения конструкций АЦП и ЦАП. Между прочим, обратите внимание, что Uвх и Uоп образуют в совокупности нечто вроде неинвертирующего и инвертирующего входа ОУ. Эта аналогия куда более полная, чем кажется, и манипулируя этими величинами, можно выделывать с выходным кодом всякие штуки, в частности, подгонять масштаб преобразования к нужному диапазону. Другое облегчение, которое можно получить от этой связи, заключается в возможности проведения относительных измерений, когда входное и опорное напряжения получаются от одного источника и тем самым имеют одинаковую относительную погрешность. Получается нечто вроде явления ослабления синфазного сигнала в ОУ. В идеале тогда мы получаем очень точные измерения, однако идеал этот, к сожалению, редко достижим на практике.

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

Простой вариант практической схемы АЦП двойного интегрирования (преобразователь напряжение — время) приведен на рис. 10.6. Счетная часть на схеме не показана. Для понимания того, как работает схема, следует обратить внимание, что управляющий вход у ключей типа 590КН2 (D1) инверсный, т. е. при низком уровне на управляющем входе ключ открыт, при высоком — заперт.



Рис. 10.6.Простой вариант АЦП двойного интегрирования (ПНВ)


Рассмотрим диаграмму работы (рис. 10.6, справа). В момент отрицательного перепада на тактовом входе Т, RS-триггер устанавливается в единицу по выходу Q. Так как на входе Т в этот момент отрицательный уровень, ключ D1/1 открывается, остальные ключи заперты. Конденсатор подключается в обратную связь верхнего ОУ (DA1/1) и начинается цикл интегрирования входного напряжения (напряжение на конденсаторе возрастает по абсолютной величине, т. е. на выходе DA1/1 падает, т. к. интегратор инвертирующий). В момент окончания отрицательного полупериода тактовой частоты ключ D1/1 запирается, а D1/3 открывается, заряженный конденсатор оказывается подключенным в обратную связь второго ОУ (DA1/2).

Начинается цикл интегрирования опорного напряжения (изменение напряжения на конденсаторе показано на диаграмме пунктирной линией). Так как обратная связь в первом ОУ теперь отсутствует, то он сработает, как компаратор: сначала на его выходе установится напряжение, равное отрицательному питанию (или близкое к нему), а в момент равенства напряжения на конденсаторе нулю выход резко устремится от отрицательного к положительному питанию (но его ограничит на уровне примерно +0,6 В диод, включенный в обратную связь, который нужен для того, чтобы не затягивать переходной процесс). Положительный перепад передастся на обнуляющий вход RS-триггера и установит его выход Q в состояние логического нуля. При этом откроется ключ D1/2 и закоротит конденсатор, прерывая таким образом процесс интегрирования. На входе верхнего ОУ установится напряжение, равное нулю, а на выходе, вообще говоря, т. к. обратная связь по-прежнему отсутствует, оно станет неопределенным (на диаграмме оно показано условно в виде нулевого уровня). Это состояние длится до конца периода тактовой частоты, а с отрицательным перепадом на входе Т ключи Dl/З и D1/2 закроются и все начнется сначала. На выходе схемы возникает положительный импульс напряжения, длительность которого