ГЛАВА 17 Откуда берутся цифры
Цифроаналоговые и аналого-цифровые преобразователи
Орудуйте мушкетом и шпагой, мой милый, в этих двух занятиях вы проявляете большое искусство, а перо предоставьте господину аббату, это по его части.
А.Дюма. Три мушкетера
С человеческой точки зрения все природные явления носят непрерывный, аналоговый характер. Одно глобальное исключение из этого правила немало потрясло ученых, когда его обнаружили: речь идет об атомно-молекулярной структуре вещества и всей огромной совокупности явлений, которые являются следствием этого феномена. И все же даже это универсальное свойство материи нашими органами чувств непосредственно не обнаруживается, для нас все протекает так, как если бы явления природы были полностью непрерывными, то есть характеризовались бы рядом действительных чисел, отстоящих друг от друга на бесконечно малые отрезки по числовой оси. В масштабах, которыми занимается атомная и молекулярная физика, все обстоит совершенно иначе, чем в привычном для нас мире, — например, такие характеристики, как температура или давление, теряют смысл, ибо они применимы только к очень большому, непрерывному ансамблю частиц.
Природа даже устроила нам некоторые препятствия на пути к полной дискретизации всего и вся — все элементарные частицы, как известно, могут вести себя и как дискретные частицы, и как непрерывные волны, в зависимости от условий эксперимента. В то же время мы обнаружили, что считать и вообще обрабатывать информацию лучше все-таки в цифровой форме, которая является универсальной и не зависит от природы физической величины, с которой мы манипулируем. Встает задача преобразования аналоговой величины в дискретную. Между прочим, термин «аналоговый» не слишком хорошо отражает сущность явления (что чему там «аналогично»?) — точнее говорить «непрерывный», а термин «аналоговый» есть лишь дань традиции, подобно «операционному» усилителю.
Естественно, когда мы хотим, чтобы преобразованная информация опять предстала перед нами в форме, воспринимаемой нашими органами чувств, то мы вынуждены делать и обратное преобразование — цифроаналоговое. Именно этим занимаются звуковые или видеокарты в компьютере. Однако такая задача возникает гораздо реже, потому что во многих случаях информацию можно оставить в цифровой форме, так ее и отобразив — в виде смены кадров на дисплее, в виде дискретной шкалы цветов для цифрового изображения, в виде небольших «ступенек» на кривой нарастания звукового сигнала. В этих случаях мы полагаемся на устройство органов чувств человека: выше некоторого порога разрешения канала передачи перестает хватать, глаз или ухо работают подобно фильтру низких частот, отрезая пульсации, и мозгу кажется, что перед ним действительно непрерывный процесс.
* * *
Заметки на полях
Интересно, что непосредственный цифровой способ отображения информации, например, в виде совокупности цифр на семисегментном индикаторе, хотя и значительно более корректен, чем аналоговый (мы не теряем информации), не всегда может оказаться более правильным. Если вы вглядитесь в пульт управления каким-нибудь сложным устройством — не обязательно атомной электростанцией, достаточно торпеды обычного автомобиля, — вы увидите, что большинство показывающих приборов там стрелочные, аналоговые. Хотя, как вы понимаете, нет никаких проблем в современном автомобиле демонстрировать скорость, уровень топлива или температуру двигателя непосредственно в цифрах, но этого не делают сознательно, потому что в очень многих случаях человека не интересует точное значение того или иного параметра. Его интересует только отклонение от некоторого значения, или превышение некоторого порога, или вообще только тенденция изменения величины — но не сама эта величина, и не сам порог. Информация о том, что температура охлаждающей жидкости составляет 80 °C, для водителя совершенно излишняя, ему важно знать, что если вот эта стрелочка не достигла вот этой красненькой черточки, значит, все в порядке. Но бывают и другие случаи — например, отсчет пробега того же автомобиля имеет смысл, только будучи представленным именно в цифровом виде, поэтому еще на заре автомобилестроения пришлось придумывать разные — тогда еще, конечно, механические — счетчики, отображающие число пройденных километров. Все это следует учитывать при проектировании различных показывающих устройств, и при необходимости приходится даже идти на усложнение схемы, причем, что обидно, нередко с заведомой потерей информации или даже с ее искажением. Типичный пример из этой области — датчик количества топлива в том же автомобиле, который проектировщики традиционно заставляют врать, занижая показания, иначе слишком много водителей оказывалось бы на дороге с сухими баками в полукилометре от ближайшей заправочной станции.
Другой пример: обычные часы с цифровым дисплеем. Все мы уже к этому делу привыкли, но ведь большинство практических задач заключаются не в определении точного времени, а в определении интервала — сколько мы уже ждем, или сколько осталось до некоторого момента. Для этого знания точного значения часов и минут не требуется, и обладателю часов с цифровым дисплеем приходится в уме производить довольно сложные арифметические действия, вычисляя этот интервал, вместо того чтобы просто мысленно передвинуть стрелки на циферблате. Как видите, проектирование показывающих устройств не слишком простое дело, т. к. не может производиться только из соображений компактности схемы или высокой точности измерений, а непременно должно учитывать требования эргономики и «usability» — удобства пользования. Если читателю кажется, что меня очередной раз занесло несколько в сторону от темы книги, то это не так, потому что проектирование аналого-цифровых и особенно цифроаналоговых устройств неразрывно связано с проблемами человеко-машинного взаимодействия — не будь потребителя, незачем все это было бы и затевать. Компьютеры в общении между собой спокойно обойдутся и двоичным кодом.
Принципы оцифровки сигналов
Займемся сначала общими принципами аналого-цифрового преобразования. Основной принцип оцифровки любых сигналов очень прост и показан на рис. 17.1, а. В некоторые моменты времени t1, t2, t3 мы берем мгновенное значение аналогового сигнала и как бы прикладываем к нему некоторую меру, линейку, проградуированную в двоичном масштабе. Обычная линейка содержит крупные деления (метры), поделенные каждое на десять частей (дециметры), каждая из которых также поделена на десять частей (сантиметры), и т. д. Двоичная линейка содержала бы деления, поделенные пополам, затем еще раз пополам и т. д. — сколько хватит разрешающей способности. Если вся длина такой линейки составляет, допустим, 2,56 м, а самое мелкое деление — 1 см (т. е. мы можем померить ей длину с точностью не хуже 1 см, точнее, даже половины его), то таких делений будет ровно 256, и их можно представить двоичным числом размером 1 байт или 8 двоичных разрядов.
Рис. 17.1. Оцифровка аналоговых сигналов:
а — основной принцип;
б — пояснение к теореме Котельникова — Найквиста
Ничего не изменится, если мы меряем не длину, а напряжение или сопротивление, только смысл понятия «линейка» будет несколько иной. Так мы получаем последовательные отсчеты величины сигнала x1, x2, x3. Причем заметьте, что при выбранной разрешающей способности и числе разрядов мы можем померить величину не больше некоторого значения, которое соответствует максимальному числу, в данном случае 255. Иначе придется или увеличивать число разрядов (удлинять линейку), или менять разрешающую способность в сторону ухудшения (растягивать ее). Все изложенное и есть сущность работы аналого-цифрового преобразователя — АЦП.
На рис. 17.1, а график демонстрирует этот процесс для случая, если мы меряем какую-то меняющуюся во времени величину. Если измерения производить регулярно с известной частотой (ее называют частотой дискретизации или частотой квантования), то записывать можно только значения сигнала. Если стоит задача потом восстановить первоначальный сигнал по записанным значениям, то, зная частоту дискретизации и принятый масштаб (т. е. какому значению физической величины соответствует максимальное число в принятом диапазоне двоичных чисел), мы всегда можем восстановить исходный сигнал, просто отложив точки на графике и соединив их плавной линией.
Но что мы при этом теряем? Посмотрите на рис. 17.1, б, который иллюстрирует знаменитую теорему Котельникова (как водится, за рубежом она носит другое имя — Найквиста, на самом деле они оба сформулировали ее независимо друг от друга). На этом рисунке показана синусоида предельной частоты, которую мы еще можем восстановить, располагая массивом точек, полученных с частотой дискретизации fд. Так как в формуле для синусоидального колебания A·sin(2πft) имеется два независимых коэффициента (А — амплитуда и f — частота), то для того чтобы вид графика восстановить однозначно, нужно как минимум две точки на каждый период[24], т. е. частота оцифровки должна быть как минимум в два раза больше, чем самая высокая частота в спектре исходного аналогового сигнала. Это и есть одна из расхожих формулировок теоремы Котельникова — Найквиста.
Попробуйте сами нарисовать другую синусоиду без сдвига по фазе, проходящую через указанные на графике точки, и вы убедитесь, что это невозможно. В то же время можно нарисовать сколько угодно разных синусоид, проходящих через эти точки, если их частота в целое число раз выше частоты дискретизации fд. В сумме эти синусоиды, или гармоники (т. е. члены разложения сигнала в ряд Фурье — см. главу 5), дадут сигнал любой сложной формы, но восстановить их нельзя, и если такие гармоники присутствуют в исходном сигнале, то они пропадут навсегда.
Только гармонические составляющие с частотами ниже предельной восстанавливаются однозначно. То есть процесс оцифровки равносилен действию ФНЧ с прямоугольным срезом характеристики на частоте, равной ровно половине частоты дискретизации.
Теперь об обратном преобразовании. В сущности, никакого преобразования цифрааналог в ЦАП, которые мы будем здесь рассматривать, не происходит, просто мы выражаем двоичное число в виде пропорциональной величины напряжения, т. е. занимаемся, с точки зрения теории, всего лишь преобразованием масштабов. Вся аналоговая шкала поделена на кванты — градации, соответствующие разрешающей способности нашей двоичной «линейки». Если максимальное значение сигнала равно, к примеру, 2,56 В, то при восьмиразрядном коде мы получим квант в 10 мВ, и что происходит с сигналом между этими значениями, а также и в промежутки времени между отсчетами, мы не знаем и узнать не можем. Если взять ряд последовательных отсчетов некоего сигнала, например, тех, что показаны на рис. 17.1, а, то мы в результате получим ступенчатую картину, показанную на рис. 17.2.
Рис. 17.2. Восстановление оцифрованного сигнала с рис. 17.1, а
Если вы сравните графики на рис. 17.1, а и на рис. 17.2, то увидите, что второй график представляет первый, мягко говоря, весьма приблизительно. Для того чтобы повысить степень достоверности полученной кривой, следует, во-первых, брать отсчеты почаще, и во-вторых, увеличивать разрядность. Тогда ступеньки будут все меньше и меньше, и есть надежда, что при некотором достаточно высоком разрешении, как по времени, так и по квантованию, кривая станет, в конце концов, неотличима от непрерывной аналоговой линии.
* * *
Заметки на полях
Очевидно, что в случае звуковых сигналов дополнительное сглаживание, например, с помощью ФНЧ, здесь попросту не требуется, ибо оно только ухудшит картину, отрезая высокие частоты еще больше. К тому же всякие аналоговые усилители сами сгладят сигнал, и органы чувств человека тоже поработают в качестве фильтра. Так что наличие ступенек само по себе несущественно, если они достаточно мелкие, а вот резкий спад частотной характеристики выше некоторой частоты сказывается на качестве звука фатальным образом. Многие люди с хорошим музыкальным слухом утверждают, что они безошибочно отличают цифровой звук CD-качества (дискретизация которого производится с частотой 44,1 кГц, т. е. со срезом на частоте заведомо более высокой, чем уровень восприятия человеческого слуха, и с числом градаций не менее 65 тысяч на весь диапазон) от настоящего аналогового звука, например, с виниловой пластинки или с магнитофонной ленты. По этой причине качественный цифровой звук записывается с гораздо более высокими частотами дискретизации, чем формально необходимо, например, 192 и даже 256 кГц, и тогда он становится действительно неотличим от исходного. Правда, напрямую оцифрованный звук записывают разве что на диски в формате Audio CD, а почти для всех остальных форматов используют компрессию — сжатие по специальным алгоритмам. Если бы не компрессия, для записи не хватило бы ни емкости современных носителей, ни быстродействия компьютерных сетей: всего одна минута стереозвука с'параметрами CD-качества занимает на носителе около 10 Мбайт, можете проверить самостоятельно.
* * *
Углубляться в особенности дискретизации аналоговых периодических сигналов мы не будем, т. к. это очень обширная область в современной инженерии, связанная в первую очередь с оцифровкой, хранением, тиражированием и воспроизведением звука и видео, и об этом нужно, как минимум, писать отдельную книгу. Для наших же целей достаточно изложенных сведений, а теперь мы перейдем непосредственно к задаче оцифровки и обратного преобразования отдельного значения сигнала.
ЦАП
Начнем мы с конца, т. е. с цифроаналоговых преобразователей — почему, вы увидите далее. Будем считать, что на входе мы имеем числа в двоичной форме — неважно, результат оцифровки какого-то реального сигнала или синтезированный код. Нам его нужно преобразовать в аналоговый уровень напряжения в соответствии с выбранным масштабом.
Самый простой ЦАП — десятичный или шестнадцатиричный дешифратор-распределитель, подобный 561ИД1. Если на него подать четырехразрядный код, то на выходе мы получим логическую единицу для каждого значения кода на отдельном выводе. Присоединив к выходам такого дешифратора линейку светодиодов, получаем полосковый (шкальный) индикатор, который с разрешением в 10 или 16 ступеней на весь диапазон будет показывать уровень некоей величины. Причем очень часто для практики такого относительно грубого индикатора, заменяющего стрелочные приборы, вполне достаточно. Выпускаются специальные микросхемы для управления такими дискретными шкальными индикаторами, которые позволяют показывать значение не в виде отдельной точки или полоски, а в виде светящегося столбика. Есть и микросхемы, которые могут управлять не дискретными, а линейными вакуумными индикаторами. Есть даже микросхема К1003ПП1 (аналог UAA180), которая преобразует аналоговую величину (напряжение) сразу в управляющий сигнал для шкального индикатора. Довольно эффектная конструкция может получиться, если в схеме термометра по рис. 13.3 или 13.4 заменить показывающую головку на такую микросхему и шкальный индикатор — как бы полноценная имитация термометра традиционного!
У такого примитивного ЦАП есть два недостатка: во-первых, повысить его разрешение свыше 16–20 градаций нереально, т. к. выходов тогда получится чересчур много. Но главное, он предназначен для узкой задачи визуализации цифровой величины и за пределами этой области беспомощен. Куда более широкое применение имел бы преобразователь, осуществляющий функцию по рис. 17.2, т. е. выдающий на выходе аналоговое напряжение, пропорциональное коду на входе.
«Тупой» метод получения такого напряжения состоял бы в следующей модификации метода с дешифратором-распределителем типа 561ИД1. Для этого надо выстроить делитель из цепочки одинаковых резисторов, подключить его к источнику опорного напряжения и коммутировать отводы этого делителя ключами, управляемыми от дешифратора-распределителя. Для двух-трехразрядного кода можно использовать описанные в главе 15 мультиплексоры типа 561КП1 и 561КП2. Но для большего количества разрядов такой ЦАП с непосредственным преобразованием превращается в совершенно чудовищную конструкцию. Для восьмиразрядного кода потребовалось бы 256 резисторов (строго одинаковых!), столько же ключей и дешифратор с таким же количеством выходов, а ведь восьмиразрядный код — довольно грубая «линейка», ее разрешающая способность не превышает четверти процента. Поэтому на практике такой метод употребляют для построения АЦП, а не ЦАП (потому что, несмотря на сложность, он обладает одним уникальным свойством, см. далее), и здесь мы даже не будем рисовать такую схему.
Рассмотрим один из самых распространенных методов, который позволяет осуществлять преобразование код-напряжение без использования подобных монструозных конструкций. На рис. 17.3, а показан вариант реализации ЦАП на основе ОУ с коммутируемыми резисторами в цепи обратной связи. В качестве коммутирующих ключей можно применить, например, малогабаритные электронные реле серии 293, т. е. того же типа, что мы применяли в конструкции термостата по рис. 12.9, или специализированные ключи из серии 590. Однако для осуществления переключающего контакта потребовалось бы ставить по два таких ключа на каждый разряд, потому в серии 561 предусмотрена специальная микросхема 561КТЗ (CD4066), которая содержит четыре одинаковых ключа, работающие именно так, как показано на приведенной схеме.
Рис. 17.3. Схемы, применяемые при построении ЦАП:
a — двухразрядный ЦАП с отрицательным выходом;
б — цепочка R—2R произвольной длины;
в — ЦАП с положительным выходом
Ключи эти двунаправленные, но их выводы работают по-разному. Тот вывод, который обозначается OUT/IN (в отечественном варианте обычно просто «Выход»), в одном состоянии коммутируется с другим входом/выходом, в другом просто отключен, как обычно. А вывод, обозначаемый IN/OUT (в отечественном варианте просто «Вход»), в одном состоянии подключается к первому входу, а вот при разрыве ключа не «повисает в воздухе», как первый, а заземляется. Таким образом, если подать на вход управления ключом в составе 561КТЗ сигнал логической единицы, то вывод IN/OUT соответствующим образом подключенного ключа коммутируется на вход OUT/IN, а если сигнал управления равен логическому нулю, то вывод IN/OUT замыкается на «землю», как нам и нужно.
* * *
Заметки на полях
Отметим, что есть еще микросхема 176КТ1 (CD4016A, в 561-й серии ей аналога нет, но есть импортная версия CD4016B с питанием до 20 В), с которой 561КТЗ часто путают — у нее ключи самые обычные двусторонние, без заземления. И, несмотря на то, что в классическом справочнике [18] эти микросхемы описаны исчерпывающим образом, в сетевых самодеятельных справочниках по поводу 561 КТЗ нередко приводятся ошибочные сведения. Самим строить такие ЦАП, конечно, вряд ли придется, но на всякий случай следует учесть, что сопротивление ключа 561КТЗ, как и более современных модификаций (1561 КТЗ или CD4066B), довольно велико, порядка сотни ом, что может сказываться на точности. Хотя для практических целей в ряде схем (но не в рассматриваемой!) важнее не абсолютное значение сопротивления, а разница в этом параметре между ключами, которая, если верить справочникам, не превышает 5 Ом.
* * *
Рассмотрим, наконец, как же работает такая схема. Для лучшего уяснения принципов я нарисовал всего лишь двухразрядный вариант. Два разряда — это четыре градации, т. е. выходное напряжение ОУ должно принимать 4 значения с равными промежутками, в данном случае эти напряжения равны 0, а также 1/4, 1/2 и 3/4 от опорного напряжения Uоп. Как это происходит?
Рассмотрим сначала схему в исходном состоянии, когда на входах управления ключами код имеет значения «00». Так как оба нижних по схеме резистора 2R в исходном состоянии присоединены к «земле», т. е. включены параллельно, то их суммарное сопротивление равно R.
Тогда верхний по схеме резистор R и эти два резистора образуют делитель, напряжение на котором равно ровно половине от Uоп. Параллельный делителю резистор 2R в делении напряжения не участвует. Ключи разомкнуты, цепочка резисторов отсоединена от входа ОУ; и на его выходе будет напряжение, равное 0.
Пусть теперь код примет значение «01». В этом случае резистор с номиналом 2R младшего разряда (нижнего по схеме) переключается ко входу усилителя. Для самой цепочки резисторов R-2R все равно, к «земле» присоединен этот резистор или ко входу, потому что потенциал входа ОУ равен тому же потенциалу «земли». Таким образом, ко входу ОУ через сопротивление с номиналом 2R потечет ток, величина которого будет равна величине напряжения на его входе (Uоп/2, как мы выяснили), деленной на величину этого резистора (2R). Итого значение тока будет Uоп/4R, и ток этот создаст на резисторе обратной связи ОУ, сопротивление которого равно R, падение напряжения, равное Uоп/4. Можно считать и по-другому — рассматривать инвертирующий усилитель с коэффициентом усиления 0,5, что определяется отношением сопротивлений R/2R, и напряжением на входе Uоп/2. Итого на выходе всей схемы будет напряжение Uоп/4 (но с обратным знаком, т. к. усилитель инвертирующий).
Пусть теперь код принимает значение «10». Тогда все еще проще — ко входу ОУ подключается напряжение Uоп через верхний резистор 2R. Коэффициент усиления тот же самый (0,5), так что на выходе будет напряжение Uоп/2. Самый сложный случай — когда код принимает значение «11», и подключаются оба резистора. В этом случае ОУ надо рассматривать как аналоговый сумматор (см. главу 12, рис. 12.5, а). Напряжение на выходе будет определяться суммой токов через резисторы 2R, умноженной на величину сопротивления обратной связи R, т. е. будет равно (Uоп/2R + Uоп/4R)R, или просто 3Uоп/4.
Я так подробно рассмотрел этот пример, чтобы наглядно продемонстрировать свойства цепочки R-2R. Способ ее построения с любым количеством звеньев показан на рис. 17.3, б. Крайние резисторы 2R включены параллельно и в сумме дают сопротивление R, поэтому следующее звено оказывается состоящим из тех же номиналов по 2R и в сумме тоже даст R и т. д. Какой бы длины цепочку не сделать, она будет делить входное напряжение в двоичном соотношении: на самом правом по схеме конце цепочки будет напряжение Uоп, на следующем отводе Uоп/2, на следующем Uоп/4 и т. д.
Поэтому с помощью всего двух типономиналов резисторов, отличающихся ровно в два раза, можно строить ЦАП в принципе любой разрядности. Так, восьмиразрядный ЦАП будет содержать 16 резисторов и 8 ключей (если с переключением, как в 561КТЗ), не считая резистора обратной связи, который у нас для наглядности был равен также R, но может быть любого удобного номинала. В интегральных ЦАП часто этот резистор вообще не устанавливают заранее, а выносят соответствующие выводы наружу, так что можно легко получать любой масштаб напряжения по выходу. Например, если в нашей схеме сделать этот резистор равным 1,33R, то на выходе мы получим напряжения, равные Uоп, 2Uоп/3, Uоп/3 и 0.
Правда, неудобство в такой простейшей схеме заключается в том, что выходные напряжения будут с обратным знаком, но эта проблема легко решается. На рис. 17.3, в показан простейший вариант ЦАП с «нормальным» положительным выходом. Проанализировать работу этой схемы я предоставляю читателю самостоятельно — она, вообще-то, даже проще, чем инвертирующий вариант. Недостатком этого варианта по сравнению с инвертирующим будет то, что коэффициент усиления не регулируется, и масштаб будет определяться только величиной Uоп. Но и этот недостаток легко исправить небольшим усложнением схемы. Такие ЦАП называют еще перемножающими.
* * *
Заметки на полях
Я не буду рассматривать серийные интегральные схемы ЦАП (например, 572ПА1), основанные на этом принципе, потому что в целом они работают так же, а ЦАП сами по себе, без использования в составе АЦП, требуются нечасто. Тем не менее, скажем несколько слов о проблемах, связанных с метрологией. Ясно, что получить точные значения резисторов при изготовлении микросхемы подобного ЦАП непросто, поэтому на практике абсолютные величины R могут иметь довольно большой разброс. Между собой номиналы их тщательно согласовывают с помощью лазерной подгонки. Собственное сопротивление ключей также может оказывать большое влияние на работу схемы, особенно в старших разрядах, где токи больше, чем в младших. В интегральном исполнении даже делают эти ключи разными — в старших разрядах ставят более мощные с меньшим сопротивлением. А если попытаться сделать самодельный ЦАП на основе упомянутых ранее 516КТЗ, то величина R должна составлять десятки килоом, не менее, иначе ключи начнут вносить слишком большую погрешность.
* * *
Еще один момент связан с получением стабильного опорного напряжения, поскольку это непосредственно сказывается на точности преобразования, причем абсолютно для всех АЦП и ЦАП, как мы увидим далее. В настоящее время успехи электроники позволили почти забыть про эту проблему — все крупные производители выпускают источники опорного напряжения, позволяющие достигать стабильности порядка 16 разрядов (т. е. 65 536 градаций сигнала). К тому же всегда можно исхитриться построить схему так, чтобы измерения стали относительными.
Быстродействие ЦАП рассмотренного типа в основном определяется быстродействием ключей и типом применяемой логики, и в случае КМОП-ключей не слишком высокое — примерно такое же, как у обычных КМОП-элементов.
Большинство интегральных ЦАП построено с использованием описанного принципа суммирования взвешенных токов или напряжений. Другой класс цифроаналоговых преобразователей составляют интегрирующие ЦАП, которые служат для преобразования величин, меняющихся во времени. Эти ЦАП в идеале позволяют сразу получить действительно аналоговый, непрерывный сигнал без признаков ступенек.
АЦП
Номенклатура аналого-цифровых преобразователей существенно больше, чем ЦАП. Однако все разнообразие их типов можно свести к трем разновидностям: это АЦП параллельного действия, АЦП последовательного приближения и интегрирующие АЦП. Рассмотрим их по порядку.
АЦП параллельного действия
АЦП параллельного действия — это зеркально отраженный простейший ЦАП на основе дешифратора, описанный в предыдущем разделе. В таких АЦП имеется делитель из k одинаковых резисторов, к каждой ступени которого подключен компаратор, сравнивающий напряжение на делителе с входным сигналом. Выходы компараторов образуют равномерный код, вроде того, что используется для управления шкальными индикаторами в описанном ранее простейшем ЦАП. Эти выходы подключены к шифратору с k входами, который преобразует этот код в двоичный с числом разрядов n, равным Iog2(k).
Трудности на этом пути уже описывались: схема получается крайне громоздкая, для n-разрядного кода требуется k = 2n резисторов и компараторов, причем резисторов точно согласованных между собой, и компараторов также с как можно более идентичными характеристиками. Поэтому такие АЦП с разрядностью, большей 8, почти и не выпускают. А зачем их делают вообще? По одной простой причине — этот тип АЦП является самым быстродействующим из всех, преобразование происходит фактически мгновенно и лимитируется только быстродействием применяемых компараторов и логики. Фактическое быстродействие АЦП такого типа может составлять десятки и сотни мегагерц (наиболее экстремальные типы, как МАХ108, допускают частоты до единиц гигагерц). Все остальные типы АЦП, как мы увидим, работают значительно медленнее.
АЦП последовательного приближения
АЦП последовательного приближения мы рассмотрим чуть подробнее — ввиду их практической важности. Хотя самим в настоящее время такие АЦП строить также не приходится, но для успешного использования их в интегральном исполнении следует хорошо понимать, как они работают. Именно такого типа АЦП обычно встроены в микроконтроллеры (см. главы 18 и 22).
Главная деталь АЦП последовательного приближения — ЦАП нужной разрядности (именно поэтому мы рассматривали ЦАП раньше, чем АЦП). На его цифровые входы подается код по определенному правилу, о котором далее. Выход ЦАП соединяется с одним из входов компаратора, на другой вход которого подается преобразуемое напряжение. Результат сравнения подается на схему управления, которая связана с регистром — формирователем кодов.
Есть несколько вариантов реализации процедуры преобразования. Самый простой выглядит следующим образом: сначала все разряды кода равны нулю. В первом такте самый старший разряд устанавливается в единицу. Если выход ЦАП при этом превысил входное напряжение, т. е. компаратор перебросился в противоположное состояние, то разряд возвращается в состояние логического нуля, в противном же случае он остается в состоянии логической единицы. В следующем такте процедуру повторяют для следующего по старшинству разряда. Такой метод позволяет за число тактов, равное числу разрядов, сформировать в регистре код, соответствующий входному напряжению. Способ довольно экономичен в смысле временных затрат, однако имеет один существенный недостаток — если за время преобразования входное напряжение меняется, то схема может ошибаться, причем иногда вплоть до полного сбоя. Поэтому в такой схеме обязательно приходится ставить на входе устройство выборки-хранения, о котором далее.
В другой модификации этой же схемы для формирования кодов используется реверсивный счетчик, подобный 561ИЕ11, с нужным числом разрядов. Выход компаратора попросту подключают к выводу переключения направления счета. Изначально счетчик сбрасывают в нули во всех разрядах, после чего подают на него тактовые импульсы. Как только счетчик досчитает до соответствующего значения кода, и выход ЦАП превысит входное напряжение, компаратор переключает направление счета, и счетчик отрабатывает назад. После окончания этого периода установления, если напряжение на входе не меняется, величина кода все время колеблется в пределах младшего разряда. Здесь выбросы не так страшны, но большое время установления и неизвестное заранее время реакции на быстрые изменения входного сигнала являются недостатками такого АЦП, получившего название следящего.
Теперь об устройствах выборки-хранения (УВХ). В простейшем случае это все тот же аналоговый электронный ключ, на вход которого подается измеряемый сигнал, а на выходе стоит конденсатор. До начала измерения ключ открыт, и напряжение на конденсаторе повторяет входное напряжение со всеми его изменениями. В момент начала измерения ключ запирается, и в дальнейшем в качестве измеряемого фигурирует уже напряжение, запасенное на конденсаторе, а изменения на входе на измерительную схему не влияют.
Все, казалось бы, просто, но наличие УВХ, прежде всего, достаточно сильно замедляет процесс, т. к. ключ имеет конечное сопротивление и вместе с конденсатором образует ФНЧ, который требует времени для установления нового значения напряжения и может искажать форму сигнала. Кроме того, как бы ни было велико входное сопротивление компаратора, оно конечно, да и ключ также имеет не бесконечно большое сопротивление в закрытом состоянии. Иногда в схеме присутствует и элемент для принудительного сброса конденсатора (обнуления его), наконец, конденсатор также имеет собственные утечки — все это вынуждает увеличивать емкость конденсатора и еще больше снижать быстродействие схемы. В интегральных АЦП подобного рода нередко даже предоставляется выбор между точностью и быстродействием.
Кроме выборки-хранения, в АЦП последовательного приближения требуется также время на вывод данных и подготовку к следующему циклу измерения. Все указанные причины приводят к тому, что наиболее распространенные 10-12-разрядные АЦП последовательного приближения имеют реальное быстродействие не выше 50-200 кГц. Как пример достаточно продвинутой модели приведем МАХ1132, который имеет разрешение 16 бит при частоте выборок 200 кГц. Тем не менее, АЦП последовательного приближения очень распространены и применяются там, где требуется средняя точность при достаточно высоком быстродействии.
Интегрирующие АЦП
Наиболее точными и одновременно самыми медленными являются интегрирующие АЦП. Их мы рассмотрим наиболее подробно, потому что, во-первых, они могут быть достаточно просты схемотехнически, и иногда даже целесообразно самому соорудить такой узел схемы на дискретных элементах, чем подбирать подходящий чип, и, во-вторых, этот тип АЦП наиболее часто применяется в радиолюбительской практике (если не считать встроенных в микроконтроллеры АЦП последовательного приближения). Далее в этой главе мы сконструируем на основе готового АЦП такого типа цифровой термометр с достаточно хорошими характеристиками.
Разных типов интегрирующих АЦП вообще-то не меньше десятка, но здесь мы подробно рассмотрим только три разновидности. Кстати, интегрирующие АЦП являются примером того, что цифровая техника вовсе не всегда достигает наивысшей точности в сравнении с аналоговой — центральным узлом этих, как мы уже сказали, наиболее точных преобразователей является чисто аналоговый интегратор на ОУ.
Схема самого простого интегрирующего АЦП показана на рис. 17.4. Это так называемый АЦП с однократным интегрированием. В начале преобразования на вход С динамического D-триггера поступает положительный фронт, который устанавливает выход Q в состояние логической единицы. Она является разрешающим уровнем для элемента «И-НЕ», и на вход счетчика поступают импульсы. Одновременно через выход Q запирается транзистор VT1. Конденсатор начинает заряжаться от источника стабильного тока. При равенстве значения входного измеряемого напряжения и напряжения на конденсаторе компаратор срабатывает и обнуляет триггер («ворота» на логическом элементе «И-НЕ» запираются, транзистор открывается и разряжает конденсатор, счетчик обнуляется). Количество импульсов, накопленных в счетчике к этому моменту, пропорционально входному напряжению.
Рис. 17.4. АЦП однократного интегрирования
Источник тока вместе с конденсатором в данном случае образуют так называемый ГЛИН—генератор линейно изменяющегося напряжения. Схему можно упростить, если вместо источника тока поставить простой резистор, питающийся от стабильного источника напряжения, но так как форма кривой нарастания напряжения при этом не линейная, а экспоненциальная (см. рис. 5.7 в главе 5), то приходится ограничиться небольшим диапазоном входных напряжений, где форма кривой еще близка к прямой линии. Однако на практике так часто и поступают, поэтому источник тока я подробно не рисовал.
Если все же задаться целью расширения входного диапазона вплоть до значений, близких к напряжению питания, то придется делать «нормальный» источник тока. Использование простого полевого транзистора, как мы делали в схеме лабораторного источника питания (рис. 9.12), не выход, т. к. он все же является достаточно грубым источником. С другой стороны, чем городить источник тока (например, по варианту, представленному на рис. 12.5, г), проще вообще построить ГЛИН по-иному, в виде обычного интегратора по рис. 12.5, б, только добавив к нему ключ для сброса по окончании преобразования.
* * *
Подробности
Для сброса можно использовать вместо полевого обычный маломощный n-р-n-транзистор, но диапазон входного напряжения будет тогда ограничен еще и снизу значением напряжения на коллекторе открытого транзистора (примерно 0,3 В). Поэтому при снижении питания до 5 В лучше для сброса взять электронный ключ, вроде 561КТЗ. При конструировании таких схем на микроконтроллерах (см. далее) для сброса конденсатора можно применить тот же вывод порта, который является входом компаратора, если его переключать на вход в рабочем цикле и на выход с нулевым уровнем для сброса.
* * *
У схемы по рис. 17.4 единственное достоинство — простота, и куча недостатков. При взгляде на нее непонятно, чего это я ранее распинался насчет выдающихся характеристик интегрирующих АЦП. Результат преобразования здесь зависит от всего на свете: от стабильности источника тока и самого ГЛИН (и каждого его элемента в отдельности, в первую очередь — конденсатора), от стабильности порога компаратора, от неидеальности ключа для сброса и т. п. Еще хуже то, что схема в данном варианте срабатывает от мгновенного значения входного сигнала и потому весьма восприимчива к его дребезгу и вообще любым помехам. А если тактовая частота случайно окажется кратной частоте помехи (в первую очередь сетевой с частотой 50 Гц), то мы вообще можем получать каждый раз значения, весьма далекие от истины[25]. Поэтому такая схема годится лишь для измерения сигналов постоянного тока — для контроля напряжения батареек или чего-нибудь в этом роде (подобная схема, например, ранее применялась в компьютерном игровом порту для измерения положения привязанного к движку потенциометра управляющего рычага джойстика).
В то же время преобразование длится все равно достаточно долго, поскольку обычные значения тактовой частоты, при которых схема еще работает приемлемо, лежат в диапазоне максимум десятков килогерц (если, конечно, специально не использовать быстродействующие компараторы и логику), т. е. для достижения разрешающей способности в восемь разрядов (больше все равно не выжмешь) частота отсчетов составит в лучшем случае 100 Гц, на практике же еще меньше. Может быть, использовать этот факт и измерять не мгновенное, а среднее значение сигнала за время преобразования?
Сделать это несложно — достаточно подать измеряемое напряжение на вход ГЛИН, а опорное — на компаратор. Тогда сигнал станет интегрироваться за время преобразования, причем интегрироваться очень точно, и мы будем получать истинное среднее арифметическое значение сигнала за это время. Но легко увидеть, что сама функция преобразования при этом окажется обратной, — т. е. время заряда (и значение выходного кода на счетчике) окажется обратно пропорциональным значению входного напряжения. Это неудобно, т. к. сильно усложняет обработку результата. Можно применить какой-нибудь хитрый метод деления частоты с использованием реверсивного счетчика, можно также попробовать инвертировать входной сигнал и затем сдвинуть его в положительную область, но все это приводит к усложнению схемы, причем неоправданному — сама по себе точность преобразования в любом случае не увеличится, избавляемся мы только от помехи.
По всем этим причинам АЦП с однократным интегрированием, несмотря на его простоту, в настоящее время не употребляют вообще и даже не выпускают в виде специализированных микросхем. Единственная область, где можно было бы рекомендовать такой метод, — использование микроцроцессоров, имеющих встроенный компаратор. В этом случае с помощью одного внешнего резистора и конденсатора можно получить простейший преобразователь аналогового сигнала в код. Но и эта рекомендация потеряла в настоящее время всякий смысл, т. к. доступны микроконтроллеры со встроенными «нормальными» АЦП без всяких внешних элементов, причем мультиканальными, с гарантированной точностью и разрешением до 10 и даже 12 разрядов, чего для большинства практических нужд более чем достаточно.
Пожалуй, рассказ об АЦП однократного интегрирования получился чересчур затянутым, но это оправданно, т. к. мы теперь знаем, к чему нам стремиться. И я предвкушаю изумление читателя, когда он узнает, как можно преодолеть чуть ли не все перечисленные здесь недостатки, как говорится, одним махом, и притом не слишком усложняя схему. Интегрирующие АЦП не получили бы такого распространения и заслуженной репутации «самых стабильных», если бы не это обстоятельство.
Идея метода, который называется двойным или двухстадийным интегрированием, показана на рис. 17.5. Посмотрим сначала на график, обозначенный цифрой 1.
Рис. 17.5. Цикл работы АЦП двойного интегрирования:
1 — идеальный случай, 2 — при сдвиге порога компаратора; 3 — при изменении емкости конденсатора
В первую часть цикла работы за фиксированное время такта t2 — t1 конденсатор интегратора заряжается током, который определяется входным (измеряемым) напряжением Uвх. Во второй части этот конденсатор разряжается точно известным током, определяющимся опорным напряжением Uоп, до момента равенства напряжения нулю (tз). Чем больше входное напряжение, тем до большей величины зарядится конденсатор в первой части, и тем дольше он будет разряжаться во второй. Легко показать, что отношение интервала времени t3 — t2 к известному времени такта t2 — t1 будет равно отношению входного напряжения Uвх к опорному Uоп. Таким образом, измерив полученный интервал времени t3 — t2 обычным методом с помощью счетчика, как это сделано в схеме на рис. 17.4, мы получим на выходе код, пропорциональный входному напряжению.
На самом деле напряжение, до которого разряжается конденсатор, задается порогом компаратора и может в общем случае быть отличным от нуля на величину 8 за счет «гуляния» порога, например, при изменении температуры. Но так как в начале цикла измерения напряжение определялось тем же значением порога, то, как вы видите из графика 2 на рис. 17.5, в данном случае имеет значение только изменение порога за время преобразования. А оно даже в самых «неповоротливых» АЦП такого типа не превышает долей секунды, потому это изменение можно не принимать в расчет. На результате не скажется и изменение емкости конденсатора, поскольку при этом наклон прямой и заряда и разряда изменится в одинаковой степени (график 3).
В самых точных АЦП такого типа дополнительно проводят цикл автокоррекции нуля, когда на вход подают нулевое напряжение и результат потом вычитают из значения кода, полученного в рабочем цикле. Мало того, здесь даже не требуется «кварцованная» частота, и всю схему можно заводить от любого RC-генератора при условии, что время такта t2 — t1 и частота заполнения «ворот» для подсчета длительности результирующего интервала t3 — t2 задаются от одного и того же генератора.
Но чудес не бывает — точность и стабильность преобразования здесь полностью определяются точностью и стабильностью значения Uоп. От этого никуда не денешься, и, как мы говорили, это общее условие для всех без исключения конструкций АЦП и ЦАП. Между прочим, обратите внимание, что Uвх и Uоп образуют в совокупности нечто вроде неинвертирующего и инвертирующего входа ОУ. Эта аналогия куда более полная, чем кажется, и, манипулируя этими величинами, можно выделывать с выходным кодом всякие штуки, в частности, подгонять масштаб преобразования к нужному диапазону. Другое облегчение, которое можно получить от этой связи, заключается в возможности проведения относительных измерений, когда входное и опорное напряжения получаются от одного источника и тем самым имеют одинаковую относительную погрешность (получается нечто вроде явления ослабления синфазного сигнала в ОУ).
Кстати, в интегрирующих АЦП такого рода для более полного подавления помех нужно делать первую часть цикла интегрирования именно кратным периоду помехи. Тогда в цикле укладывается целое число периодов помехи, и она усредняется. Практически наибольшее влияние оказывает сетевая помеха частотой 50 Гц, поэтому частоту циклов стараются делать в круглых числах.
Простой вариант практической схемы АЦП двойного интегрирования (преобразователя напряжение-время, ПНВ) показан на рис. 17.6. Счетная часть на схеме не показана. Для понимания того, как работает схема, следует обратить внимание, что управляющий вход Y у ключей типа 590КН2 инверсный, т. е. при низком уровне на управляющем входе ключ распахнут, а при высоком — заперт.
Рассмотрим диаграмму работы (рис. 17.6, справа).
Рис. 17.6. Простой вариант АЦП двойного интегрирования (ПНВ)
В момент отрицательного перепада на тактовом входе Т RS-триггер устанавливается в единицу по выходу Q. Так как на входе Т в этот момент отрицательный уровень, ключ D1/1 открывается, остальные ключи заперты. Конденсатор подключается в обратную связь верхнего ОУ (DA1/1) и начинается цикл интегрирования входного напряжения (напряжение на конденсаторе возрастает по абсолютной величине, т. е. на выходе DA1/1 падает, поскольку интегратор инвертирующий). В момент окончания отрицательного полупериода тактовой частоты ключ D1/1 запирается, а ключ D1/3 открывается, заряженный конденсатор оказывается подключенным в обратную связь второго ОУ (DA1/2). Начинается цикл интегрирования опорного напряжения (изменение напряжения на конденсаторе показано на диаграмме пунктирной линией). Поскольку обратная связь в первом ОУ теперь отсутствует, то он сработает, как компаратор — сначала на его выходе установится напряжение, равное отрицательному питанию (или близкое к нему), а в момент равенства напряжения на конденсаторе нулю выход резко устремится от отрицательного к положительному питанию (но его ограничит на уровне примерно +0,6 В включенный в обратную связь диод, который нужен для того, чтобы не затягивать переходной процесс). Положительный перепад передастся на обнуляющий вход RS-триггера и установит его выход Q в состояние логического нуля. При этом откроется ключ D1/2 и закоротит конденсатор, прерывая таким образом процесс интегрирования. На входе верхнего ОУ установится напряжение, равное нулю, а на выходе, вообще говоря (т. к. обратная связь по-прежнему отсутствует), оно станет неопределенным, и на диаграмме показано условно в виде нулевого уровня.
Это состояние длится до конца периода тактовой частоты, а с отрицательным перепадом на входе Т ключи D1/З и D1/2 закроются, и все начнется сначала. На выходе схемы образуется положительный импульс напряжения, длительность которого t3 — t2 пропорциональна входному напряжению, согласно соотношению, сформулированному ранее.
Схема рассчитана для получения разрешающей способности 12 разрядов или 4096 градаций. Стабильность схемы напрямую зависит от стабильности резисторов, поэтому их нужно выбирать с точностью не хуже 0,1 %, в этом случае абсолютная точность может достигнуть 10 разрядов без дополнительной калибровки.
Однако Uоп тоже должно иметь не меньшую стабильность, поэтому для его получения следует использовать прецизионные источники опорного напряжения. В данном случае подойдет микросхема МАХ875, дающая на выходе 5 В с точностью 0,04 %. Подробный анализ всех погрешностей этой схемы, в том числе температурных, занял бы слишком много места, поэтому рассмотрим еще только принцип выбора частоты преобразования и требования к элементам.
Максимальная частота отсчетов может быть подсчитана из следующих соображений. Так как мы имеем дело с КМОП, то максимальную частоту счетных импульсов примем равной 1 МГц. Нам требуется обеспечить 12 разрядов, т. е. число импульсов за время «ворот» при максимально возможном входном напряжении, равном опорному, должно составить как минимум 4096 штук. Поделив 1 МГц на это число, мы получим частоту около 244 Гц, однако ее надо еще уменьшить вдвое, поскольку у нас в рабочем периоде должно быть два таких такта: прямого и обратного интегрирования. Итого получаем 122 Гц, что и есть максимальная частота при выбранной элементной базе. Исходя из этого выбраны величины сопротивлений и емкость конденсатора. При указанных на схеме их величинах, напряжение на выходе интегратора при входном напряжении 5 В достигнет примерно 9 В за время интегрирования, равное половине периода частоты 122 Гц.
Входное напряжение ограничено для данной схемы диапазоном от нуля до примерно 4,95 В. Напряжение выше этого значения расстроит работу схемы, потому что импульс обнуления за счет RC-цепочки все еще будет длиться, когда придет импульс установки. Импульс обнуления можно было бы сократить, например, за счет введения «корректной» дифференцирующей цепочки (по рис. 16.6, а), но к ограничению уровня входного напряжения ведет и другое обстоятельство, а именно — конечное время разряда конденсатора через ключ при приведении схемы в исходное состояние. При использованных на схеме элементах и при условии достаточно полного разряда оно составит не менее 20–30 микросекунд (сопротивление ключа около 50 Ом), т. е. до 1 % от максимальной длительности, что и ограничивает время рабочего импульса и максимальное напряжение примерно на ту же величину. Избавиться от этого можно только усложнением схемы и введением дополнительного интервала специально для обнуления — в серийных АЦП так и поступают.
Теперь о выборе элементов. При указанных частотах скорость нарастания сигнала на выходе верхнего по схеме ОУ, служащего компаратором, должна быть такой, чтобы сигнал изменялся от напряжения насыщения до нуля не более чем в пределах одного импульса счетной частоты, длящегося 1 мкс. То есть скорость нарастания должна быть не меньше 10 В/мкс, иначе мы получим ошибку за счет неточного определения момента окончания интегрирования (то же требование справедливо и для скорости срабатывания ключей). Второе требование к ОУ — для более точного интегрирования желателен достаточно малый входной ток смещения, не более нескольких наноампер. Он рассчитывается исходя из величины максимального тока интегрирования, в данном случае около 250 мкА, деленного на ту же величину в 12 разрядов, т. е. 4096. Входной ток ОУ должен удовлетворять условию «много меньше», чем полученная величина около 60 нА.
Если принять во внимание допустимое напряжение питания (не менее 12 В), то не так уж и много ОУ удовлетворят указанным требованиям. Микросхема ОРА2132 (два ОРА132 в одном корпусе DIP-8) фирмы Texas Instruments представляет собой прецизионный ОУ с высоким быстродействием (полоса 8 МГц, скорость нарастания до 20 В/мкс), очень малым входным током смещения (50 пА) и высоким допустимым напряжением питания до ±18 В. Из классических отечественных ОУ в коридор требований с некоторой натугой влезет 544УД2 или некоторые ОУ серии 574.
Впрочем, номенклатуру пригодных чипов можно значительно расширить, если снизить напряжение питания до ±5 В (при этом допустимый диапазон входного напряжения необязательно снизится, т. к. оно может превышать напряжение питания, просто манипулировать многими питаниями неудобно) и/или уменьшить частоту счета, например, до 100 кГц (частота отсчетов снизится до 12 Гц, а требования к быстродействию ОУ соответственно упадут). Все это иллюстрирует сложности, которые приходится преодолевать разработчикам при проектировании подобных АЦП в интегральном исполнении, и объясняет, почему интегрирующие АЦП обычно работают так медленно — у большинства прецизионных АЦП частота отсчетов не превышает величины несколько десятков или сотен герц.
Сконструированное нами АЦП относится к типу ПНВ — преобразователей напряжение-время. Ранее широко использовались ПНЧ — преобразователи напряжение-частота (в основном на основе микросхемы 555, см. главу 16), однако большинство их реализаций обладает тем же недостатком, что и однократный интегратор, т. е. в них точность зависит от качества компонентов напрямую. Сейчас мы рассмотрим интегрирующий преобразователь, который также использует двойное интегрирование, но на выходе его получается не интервал времени, который еще нужно сосчитать, а число-импульсный код, т. е. сразу число импульсов за определенный промежуток времени, пропорциональное входному напряжению. Это не частота, как можно бы подумать, точнее, не совсем частота.
АЦП такого типа (преобразователи напряжение-код, ПНК) называются еще дельта-сигма-преобразователями или АЦП с уравновешиванием заряда. Они широко распространены в интегральном исполнении, большинство наиболее высокоразрядных АЦП построены именно так. Я не буду рисовать подробную схему с указанием типов компонентов и разводкой выводов, потому что принципы подбора комплектующих сильно зависят от необходимой точности и разрешающей способности (разрядности), а самостоятельно строить такие схемы нет особого резона.
Принципиальная схема работы ПНК показана на рис. 17.7.
Рис. 17.7. Принцип работы АЦП с уравновешиванием заряда
Работает она следующим образом. Как только напряжение на выходе интегратора DA1 становится меньше нуля, компаратор D1 переключается, и тактовые импульсы начинают поступать на вход счетчика и одновременно на ключ, коммутируя источник опорного тока к суммирующей точке интегратора. Входной ток Iвх и опорный Iоп имеют разные знаки и опорный больше по величине, поэтому с каждым тактовым импульсом напряжение на конденсаторе будет уменьшаться, а на выходе интегратора — стремиться к нулю. Как только оно опять сравняется с нулем, компаратор переключится, и тактовые импульсы перестанут поступать на счетчик и на ключ. Заряд, который сообщается интегратору за каждый тактовый импульс, строго одинаков, поэтому количество таких тактовых импульсов в единицу времени N, необходимых для уравновешивания заряда, сообщаемого источником входного напряжения, будет в точности пропорционально входному напряжению. Разумеется, токозадающие резисторы в цепи входного и опорного напряжения вовсе не обязаны быть равны друг другу, но в любом случае число N будет пропорционально входному току и обратно пропорционально опорному, если соблюдается соотношение Iоп >= Iвх. При их равенстве число импульсов N за секунду будет равно тактовой частоте. Манипулируя величиной Uоп и номиналами резисторов, можно получать различный масштаб. Отметьте, что импульсы на входе счетчика, представляющие число N, могут быть неравномерно распределены во времени — этим ПНК отличается от ПНЧ.
Здесь точность преобразования зависит практически только от стабильности Iоп (Uоп) — при условии, конечно, выбора остальных компонентов по быстродействию в соответствии с рекомендациями для АЦП двойного интегрирования. Автор этих строк строил схему подобного ПНК на самых что ни на есть рядовых элементах: ключах 590КН2, ОУ 544УД1 и КМОП 561-й серии, в качестве источника тока использовалась схема по типу рис. 12.5, г на ОУ 140УД20 и стабилитроне КС170. Тем не менее, при тактовой частоте 2048 Гц (т. е. разрешающей способности 11 разрядов при времени измерения 1 с) стабильность схемы составляла не хуже 3 единиц кода (0,15 %) в диапазоне от -18 до +40 градусов! А если тщательно проработать вопрос стабильности и быстродействия элементов, то можно получить нечто вроде МАХ1400 — прецизионного 18-разрядного АЦП с быстродействием 4800 отсчетов в секунду.
Конструируем цифровой термометр
Цифровые термометры конструировать самостоятельно имеет смысл по крайней мере потому, что рынок подобных бытовых устройств достаточно беден. Фирменные приборы для расположения на стенке комнаты или офиса обычно имеют невзрачный дизайн с корпусами белого или «компьютерного» серого цвета и с ЖК-индикаторами, которые из-за их «слепоты» я бы категорически не рекомендовал применять в бытовых приборах, особенно тех, что предназначены для разглядывания издалека. Терпеливый радиолюбитель вполне может сделать конструкцию куда лучше фирменной — удобную, красивую и приспособленную под свои нужды, а «приставить» к такому термометру измерители влажности, давления и еще чего угодно, получив настоящую метеостанцию, — вопрос только денег, и мы еще этим будем заниматься.
Но сначала поговорим об одной из самых популярных микросхем АЦП, специально приспособленной для конструирования таких приборов, как цифровые измерители или мультиметры. Впервые обе ее разновидности выпущены более четверти века назад и до сих пор не потеряли своего значения — большая часть мультиметров, поступающих в продажу, изготовлена на таких микросхемах или их современных аналогах.
АЦП 572ПВ2 и ПВ5
Основой принципиальной схемы нашего термометра будет микросхема 572ПВ2 (ICL7107), которая представляет собой АЦП двойного интегрирования с выходом в параллельном семисегментном коде с расчетом на 3,5 десятичных разряда. Что означает цифра 3,5 — не может же использоваться полразряда? Действительно, при использовании полного выходного диапазона этой микросхемы, который составляет число ±1999, нужно подключать 4 индикатора, однако последний (старший) из них будет использоваться только для индикации цифры 1 и, при необходимости, знака минус. Число 3,5 и означает, что старший разряд используется не полностью (бывают и более заковыристые обозначения, вроде 3 % разряда, но их оставим на совести авторов). Заметим, что разрешающая способность (а при соблюдении некоторых требований — и точность) этого АЦП эквивалентна приблизительно 11 двоичным разрядам, т. е. приведенная погрешность составит 0,05 %, что очень и очень неплохо.
Основная (типовая) схема включения микросхемы 572ПВ2 показана на рис. 17.8. Микросхема имеет два собственных питания: положительное 5 В (от 4,5 до 6 В) и отрицательное, которое может варьироваться в довольно большом диапазоне от -9 до -3,5 В. Это обстоятельство позволяет при необходимости использовать для отрицательного питания не слишком стабильные преобразователи-инверторы, о чем далее.
Рис. 17.8. Типовое включение микросхемы 572ПВ2 (ICL7107) в корпусе DIP-40
Семисегментные LED-индикаторы можно подключать напрямую, без каких-либо дополнительных резисторов (ток через сегмент при этом равен 5–8 мА). Управление индикаторами осуществляется коммутацией на «землю», поэтому нужен индикатор с общим анодом, который целесообразно подключать к отдельному источнику питания, чтобы не вносить лишние помехи. Однако выходы управления индикатором не являются выходами с открытым коллектором (точнее — истоком), а есть обычный комплементарный КМОП-выход (см. рис. 15.1, схему инвертора справа).
Вытекающий ток в состоянии логической единицы может составить примерно 0,5 мА, а в состоянии логического нуля — примерно 5–8 мА (для вывода 19, который управляет одновременно двумя сегментами при засветке 1 в старшем разряде, этот ток составляет 10–16 мА).
* * *
Заметки на полях
Это обстоятельство можно использовать для управления индикаторами через внешние ключи. Дело в том, что для питания LED, потребляющих достаточно большой ток (при максимальном количестве зажженных сегментов, т. е. при индикации -1888, он может составить от 120 до 200 мА), естественно было бы использовать нестабилизированное повышенное напряжение, например, от входа стабилизатора положительного напряжения. Это особенно актуально при подключении крупных индикаторов с повышенным падением напряжения, поскольку при напряжении 5 В они будут светиться очень тускло (если загорятся вообще). Однако ставить более 20 штук ключей не очень хочется, если конструкция не слишком капитальная. К сожалению, в технической документации ни один из производителей не упоминает о возможности подключения LED-индикатора к повышенному напряжению. Можно ожидать, что при пиковом значении напряжения питания, не превышающем суммы основного питания (5 В) и падения напряжения на индикаторе (1,8–2 В для обычных и 3,5–4 В для крупных индикаторов), микросхеме ничего не грозит. В крайнем случае, можно поставить небольшие резисторы, ограничивающие ток через защитные диоды. Автор этих строк на свой страх и риск провел долгосрочный эксперимент по питанию LED-индикатора высотой 1 дюйм от пульсирующего напряжения 6,5–7 В с амплитудным значением, соответственно, около 9-10 В (от отдельной обмотки трансформатора через один диод в качестве выпрямителя). Опыт показал, что такой режим микросхема вполне выдерживает. При этом из-за «однополупериодности» напряжения средний ток через сегменты примерно в полтора раза ниже номинального, чего вполне достаточно для нормальной яркости свечения. Здесь мы также применим этот режим питания, однако в некоторых случаях это неудобно, и приходится ставить отдельный мощный стабилизатор, как и положено.
* * *
Выпускается совершенно идентичная по функциональности и разводке выводов микросхема 572ПВ5 (ICL7106), которая отличается только тем, что она предназначена для управления ЖК-индикаторами, а не светодиодными, так что, если есть нужда в малом потреблении, можно почти без изменений основной схемы использовать такой вариант. Просто заменить LED-индикатор на ЖК и наоборот, как мы уже говорили, нельзя, потому что для управления ЖК-индикаторами требуется переменное напряжение, иначе отключенные сегменты «зависнут» в поглощающем свет состоянии. Поэтому при замене ПВ2 на ПВ5 отличие в схеме заключается в том, что вывод 21 представляет собой не «цифровую землю» (GND4), а подсоединяется к общему выводу ЖК-индикатора. При этом отдельное питание, естественно, не требуется. Управление ЖК-сегментами происходит так: на общем выводе 21 все время присутствует меандр, а на тот сегмент, который нужно засветить, подается точно такой же меандр, но в противофазе. При отключении сегмента фаза на выводе его управления меняется на противоположную и становится такой же, как на выводе 21, поэтому постоянное напряжение на сегмент никогда не подается.
Отдельный вопрос представляет засветка запятой, если ее по ходу дела надо гасить. В LED-варианте это несложно (можно просто засветить постоянно или через какой-то ключ), а для ЖК-варианта нужно для нее также обеспечить подобный режим управления. Иначе при подаче постоянного напряжения она просто засветится навсегда (и будет светиться еще долго после выключения питания) и к тому же станет резко выделяться большим контрастом. Разработчики рекомендуют использовать для этой цели отдельный логический инвертор, подключенный к выходу 21. При этом (как и в случае подключения внешнего тактового генератора, см. далее) в качестве «цифровой земли» в 572ПВ5 следует использовать вывод 37 (TEST).
Ввиду отсутствия у микросхемы ПВ5 «цифровой земли» как таковой, эту микросхему можно питать от одного источника, напряжение которого может составлять от 9 до 15 В (что эквивалентно диапазону от ±4,5 до ±7,5 В). Только при этом не следует забывать, что для обеих микросхем опорное и входное напряжения не должны выходить за пределы, на 1 В отступающие от потенциалов +Uпит и -Uпит.
Для микросхемы ПВ2, вообще говоря, требуется двуполярное питание во всех случаях, т. к. «цифровая земля» GNDц должна иметь общую точку с аналоговой частью для внутреннего согласования уровней управляющих сигналов. Однако можно обойтись одним питанием +5 В (подсоединив вход — Uпит к «земле»), если, в соответствии с ранее сказанным, опорное и измеряемое напряжения по абсолютной величине не превышают 1,5 В, причем эта величина должна отсчитываться от середины Uпит.
Есть и более современные варианты этих преобразователей — например, с очень малым потреблением, но параметры рассмотренных микросхем и так достаточно хороши — при тактовой частоте 50 кГц время преобразования составляет 0,32 с (16 000 периодов тактовой частоты), а потребление при этом не превышает 0,6 мА (не считая, конечно, потребления индикаторов в LED-варианте).
Удобство микросхем ПВ2 и ПВ5 заключается и в том, что они оперируют с двухполярными входными напряжениями, автоматически определяя и высвечивая знак. Диапазон входного измеряемого напряжения определяется опорным, с помощью которого и задается масштаб, при этом опорное должно находиться в пределах 0,1–1 В, а измеряемое может по абсолютной величине превышать его, в соответствии с разрешающей способностью, ровно в два раза. Если, например, опорное напряжение равно 1 В, то измеряемое может быть в пределах ±2 В (точнее ±1,999 В), а в общем случае выходной код определяется выражением N = 1000·Uвх/Uоп. При превышении значением входного напряжения предела +2Uоп младшие три разряда гаснут, а при снижении ниже -2Uоп — гаснет все, кроме знака минус.
На схеме рис. 17.8 показан именно такой вариант включения с общими «землями». Однако оба входных напряжения — опорное и измеряемое — могут быть и «плавающими», без общей «земли», единственное требование — чтобы их значения не выходили за пределы питания (а по абсолютной величине они, естественно, должны соответствовать указанным ранее требованиям). В этом случае вывод 32 («аналоговая земля») не используется. На этом выводе тогда присутствует напряжение, равное (U+пит — 2,8) В. Если очень надо, его можно использовать в качестве опорного (не само напряжение относительно «земли», которая в данном случае есть довольно условное понятие, а именно разность между положительным питанием и выводом 32). Однако стабильность этого напряжения невелика, и так рекомендуется поступать только в уж очень экономичных схемах. Особенно это плохо в случае ПВ2, в которой выходные каскады за счет большого тока сильно (и неравномерно по времени из-за разного количества подключенных сегментов) нагревают кристалл, и напряжение это начинает «плавать». Ошибка при этом может составить до 0,5 %, т. е. точность снижается до 9 разрядов вместо 11.
Тактовую частоту микросхем рекомендуется выбирать из ряда 200, 100, 50 и 40 кГц, при этом частота помехи 50 Гц уложится в длительность фазы интегрирования входного напряжения (см. далее) целое число раз, и такая помеха будет интегрироваться полностью. Тактовую частоту можно задавать тремя способами: с помощью RC-цепочки, как показано на рис. 17.8, с помощью кварца, подключаемого к выводам 39 и 40, а также внешним генератором, выход которого подключается в выводу 40 (в ПВ2 при этом в качестве общего провода используется вывод 21 «цифровая земля», а в ПВ5 — вывод 37 «TEST»). На практике чаще всего используется первый способ, при этом частота будет равна примерно 0,45RгСг.
В фирменной документации на этот счет есть некоторая неясность, т. к. рекомендуется выбирать Rг = 100 кОм при Сг = 100 пф, и тогда согласно формуле частота должна составить 45 кГц. Это далеко и от 40, и от 50 кГц, рекомендуемых для частоты помехи 50 Гц, и не вполне совпадает с 48 кГц, рекомендуемыми для помехи 60 Гц. Все отечественные описания микросхем ПВ2 и ПВ5 изящно обходят этот вопрос, просто повторяя фирменные рекомендации. Думается, что составители документации имели в виду все же 60-герцовую помеху (т. е. тактовую частоту 48 кГц), поэтому в отечественных пенатах следует снизить емкость Сг до 91 пф — так будет корректнее. Вообще, ошибка в ±5 %, конечно, тут вполне допустима.
Из особенностей внутреннего функционирования этих микросхем нам интересен еще один момент. Цикл работы ПВ2 и ПВ5 состоит из трех фаз, первые две из которых идентичны циклу работы ПНВ по рис. 17.5. После окончания фазы интегрирования опорного напряжения и формирования, собственно, измерительного интервала начинается последняя (или первая для следующего измерения) часть цикла, носящая название фазы автокоррекции. В этой фазе происходит не только сброс интегрирующей емкости (который у нас в схеме по рис. 17.6 занимал некоторое время из отведенного для фазы интегрирования), но и, кроме этого, на конденсаторе Сак происходит накопление напряжения смещения всех участвующих в процессе ОУ и компараторов. В рабочих циклах это напряжение учитывается. Но для нас еще интереснее, что в фазе автокоррекции одновременно происходит заряд емкости Соп до значения опорного напряжения, и последующее интегрирование в рабочем цикле оперирует именно с этой величиной, а вход опорного напряжения при этом отключается. Собственно, сделано это для того, чтобы была возможность автоматического внутреннего инвертирования опорного напряжения при смене знака измеряемого. Однако для нас это важно, потому что позволяет сгладить наличие высокочастотных помех на входе опорного напряжения. К сожалению, длительность фазы автокоррекции является неопределенной (т. к. она занимает всю оставшуюся часть фазы интегрирования опорного напряжения, к которому прибавляется фиксированный интервал времени в 4000 периодов тактовой частоты), и низкочастотная помеха при этом интегрируется плохо.
Номиналы емкостей и резисторов на рис. 17.8 приведены для случая опорного напряжения, равного 1 В, и тактовой частоты 50 кГц. При опорном напряжении 0,1 В емкость Сак нужно увеличить до 0,47 мкФ, Синт уменьшить до 0,1 мкФ, а Rинт уменьшить до 47 кОм. В остальных случаях эти номиналы должны быть изменены в указанных пределах примерно пропорционально изменению опорного напряжения.
К выбору типов компонентов следует подходить весьма тщательно, от этого сильно зависит в первую очередь линейность преобразования. Резисторы все могут быть типа МЛТ, хотя при наличии стоит предпочесть С2-29В. Конденсатор тактового генератора Сген может быть керамическим (типа КМ73-10, КМ-5, КМ-6). Остальные конденсаторы (Синт, Соп и Сак) должны иметь органический диэлектрик, лучше всего подойдут фторопластовые (К72П-6, К72-9) или полистироловые (К71-4, К71-5), но сойдут и полиэтилентерефталатные (К73-16, К73-17). Эти конденсаторы могут ужаснуть вас своими размерами, но ничего не поделаешь — такова плата за стабильность. Высокие конденсаторы (как К73-17) следует устанавливать лежа — хотя при этом площадь платы увеличивается, но зато конденсаторы не торчат над всеми остальными компонентами. Это, кроме всего прочего, повышает надежность монтажа, ибо меньше вероятность выломать конденсатор с корнем, случайно положив поверх платы каталог продукции фирмы MAXIM.
Практическая схема термометра
Теперь, вооружившись всеми этими знаниями, приступим, наконец, к нашему термометру. И сначала нам надо будет посчитать — что мы имеем на входе и что мы хотим при этом получить на выходе?
Начнем с выхода — температура традиционно демонстрируется в виде «ХХ,Х». Таким образом, мы должны использовать только три младших разряда, при этом диапазон температур получится от -99,9 до +99,9 °C. Собственно говоря, такой диапазон чересчур широкий, практически для «погодного» термометра хватило бы и диапазона от -50 до +50 °C. В чем и состоит, как мы уже говорили, недостаток использования готовых микросхем — мы вынуждены устанавливать диапазон в соответствии с возможностями отображения чисел с помощью ПВ2. И при этом мы теряем ровно два двоичных разряда, ужимая диапазон в 4 раза. Никто нам, конечно, не запретит подключить все четыре индикатора и демонстрировать температуру от -199,9 до +199,9 °C. Но если диапазон выше 100 °C еще может пригодиться в быту (скажем, признаком готовности варенья служит температура 105–106 °C), то отрицательный диапазон аж до -200 °C вряд ли потребуется даже для самых специфических производственных нужд, а для научных задач такие температуры измеряются своими способами. Но, конечно, никто не запрещает вам использовать, например, половину диапазона со сдвигом, от -50 до +150 °C — все будет определяться соотношением резисторов, как мы увидим, и наличием индикаторов. Калибровку для простоты будем производить от 0 до 50 градусов, полагая (и это оправдывается на практике), что термодатчик при не слишком большом углублении в отрицательную область ведет себя линейно.
О выборе датчиков мы говорили в главе 13. Так как мы собираемся делать более-менее точный прибор, то выберем не полупроводниковый, а медный резистивный датчик и прикинем, какое было бы желательно иметь его сопротивление. Обычные токи через датчик должны составлять порядка 1–3 мА, иначе медная катушка приемлемых размеров будет сама нагреваться. Проще всего в качестве датчика использовать обмотку малогабаритного реле из серий, например, РЭС-60, РЭС-80, РЭС-79 или РЭС-49 — какое окажется под рукой, и чем старше возрастом, тем лучше, т. к. медь при хранении стабилизирует свои характеристики. Нет проблем использовать и любое другое реле, только крупные конструкции будут иметь значительную тепловую инерцию, к тому же многие, особенно старые, реле не герметизированы.
Указанные мной типы имеют полностью герметизированный металлический корпус, остается только изолировать от внешней среды выводы. У меня «под рукой» оказалось реле типа РЭС-60 с обмоткой 800+120 Ом (паспорт РС4.569.435-01). Изменения на диапазон 100 °C составят в среднем 320 Ом (напомним, что у меди температурный коэффициент сопротивления равен 0,4 %/°). Выберем Uоп = 0,5 В, тогда ток через датчик-обмотку должен составить 0,5 В/320 Ом ~= 1,5 мА. Так как рабочие напряжения здесь не превышают по абсолютной величине 0,5 В, то мы сможем обойтись для АЦП одним питанием +5 В, только надо будет максимально приблизить эти напряжения к середине питания.
Общая схема термометра показана на рис. 17.9.
Рис. 17.9. Прецизионный цифровой термометр на микросхеме 572ПВ2
Рассмотрим сначала включение датчика. Для того чтобы при нуле градусов термометр показывал 0, нужно на вход АЦП подавать разность текущего напряжения на датчике и значения его при нулевой температуре. В данном случае это делается с помощью мостовой схемы. Два идентичных источника тока 1,5 мА (ОУ DA1, транзисторы VT1-VT2 и резисторы R16-R19) образуют верхнюю половину моста, а нижняя состоит из датчика температуры Rt и опорного резистора R20, сопротивление которого равно сопротивлению датчика при 0 °C. Разность этих напряжений подается на АЦП в качестве входного напряжения. Фильтр R22-C6 нужен для лучшего сглаживания помех (конденсатор С6 может быть керамическим). ОУ МАХ478, как указывалось в главе 12, можно заменить, например, на ОР293 (или, с небольшой переработкой схемы, на счетверенный ОР493). Так как в этой схеме общее питание не превышает 5 В, то выбор ОУ с хорошими характеристиками несколько расширяется (ОР296, АБ8607,АО8616 и др.).
Обратим теперь внимание на хитрую схему включения самого датчика, которая носит название трехпроводной. Такая схема позволяет избежать влияния соединительных проводов и, главное, помех, которые наводятся на них. Сами по себе провода влияют слабо, т. к. в данном случае достаточно, чтобы они имели сопротивление, меньшее, чем 1/2000 сопротивления датчика[26], что составляет примерно 0,4 Ом. Это вполне обеспечит провод МГТФ-0,35, если его суммарная длина не превысит 40 м. Однако в этой схеме и столь малые изменения нивелируются тем, что два одинаковых провода, соединяющие опорный резистор с датчиком и датчик с источником тока, оказываются включенными в разные плечи моста, потому их изменения взаимно компенсируются. Наведенные на этих проводах помехи ведут себя точно так же. А третий провод, соединяющий датчик с «землей», оказывается включенным в оба плеча сразу и создает чисто синфазную помеху, которая игнорируется преобразователем. Дополнительный резистор R23, включенный в этот провод, «подтягивает» напряжение разбаланса моста к середине напряжения питания (падение напряжения на R23 составляет около 1 В). При возможном изменении напряжения питания опорное напряжение и сигнал с выхода моста будут меняться пропорционально, поэтому ошибки не возникнет.
Цепочка R21-C7 есть дополнительный фильтр по питанию ОУ в источниках тока. Остальные компоненты схемы вызвать вопросов не должны. Все резисторы, выделенные темным, должны быть с точностью не хуже 1 % — например, типа С2-29В. Номиналы их, естественно, необязательно должны быть именно такими, как указано на схеме, и могут меняться в очень широких пределах, но соотношения должны быть выдержаны точно. При ином сопротивлении датчика соотношения этих резисторов, а также сопротивления резисторов R20 и R23 придется пересчитать, при этом желательно приблизительно сохранить значения напряжений в схеме, особенно это касается близости к середине напряжения питания.
Индикаторная часть также не должна вызвать вопросов. Питание индикаторов в этой схеме обязательно должно осуществляться от отдельной обмотки трансформатора. Индикаторы зеленого свечения (с буквой G) можно заменить любыми другими, по вкусу. Так как мы четвертый разряд не используем, то не имеет смысла ставить целый индикатор для одного только знака минус, и его индикация производится с помощью одного плоского светодиода. Они бывают разных размеров, и чтобы прибор выглядел красиво, следует подогнать светящуюся полоску по ширине сегментов индикатора. В данном случае светодиод L113 имеет размеры 5x2 мм, но сегменты заметно уже, поэтому часть торцевой поверхности нужно аккуратно закрасить любой непрозрачной краской. Залить такой краской следует и боковые поверхности светодиода, иначе вместо минуса вы получите неопределенное светящееся пятно.
Если яркость минуса, запятой (вывод 5 индикатора Н2) и индикаторов Н4-Н5, постоянно демонстрирующих знак «°С», будет отличаться от яркости основных разрядов, нужно подобрать резисторы R1-R10. Источник питания нужно рассчитывать на 250 мА по напряжению ~6,3 В (по напряжению +5 В потребление не достигает и 10 мА). Конечно, в целях экономии места, стоимости и потребления тока индикаторы Н4-Н5 можно исключить.
Датчик можно изготовить следующим образом (рис. 17.10).
Рис. 17.10. Конструкция датчика на основе реле РЭС-49, РЭС-60, РЭС-79, РЭС-80 и аналогичных
1 — реле, 2 — места пайки выводов, 3 — пластмассовая трубка, 4 — эпоксидная смола, 5 — кембрик
Берется трубка (лучше пластмассовая) длиной примерно 10 см и такого диаметра, чтобы все выводы реле, в том числе выводы обмотки с припаянными проводами, свободно помещались внутри. Места пайки на всякий случай следует изолировать термоусадочным кембриком. Затем нужно пропустить провода через трубку и обязательно в месте выхода из трубки также надеть на них отрезок кембрика, чтобы ограничить радиус перегиба (позиция 5 на рис. 17.10). Потом надо залепить пластилином щели между корпусом реле и торцом трубки и залить ее внутренность эпоксидной смолой. Пластилин удаляется потом начисто с помощью бензина. Если датчик будет расположен снаружи помещения, его лучше покрыть атмосферостойким лаком или краской.
Схему следует собрать всю сразу (проверив отдельно, конечно, источник питания). Измерив величину сопротивления датчика при комнатной температуре, следует рассчитать необходимую величину резистора R20 (на схеме дана его величина, исходя из сопротивления датчика ровно 800 Ом при 20 °C). Затем на место калибровочных резисторов R14 и R20 нужно впаять резисторы большего номинала, а параллельно им — переменные резисторы с таким значением сопротивления, чтобы вместе они составляли номинал примерно на 5-10 % больший расчетного. Наладку надо начинать с проверки правильности разводки индикаторов. Для этого вывод «TEST» следует замкнуть с напряжением питания — индикаторы должны загореться все, показав значение «888».
Затем можно приступать к процедуре калибровки. Набейте термос толченым льдом (зимой лучше использовать для этой цели снег) пополам с водой — это будет первая калибровочная точка. Вторая может быть обеспечена просто теплой водой с температурой от 40 до 60 градусов, причем поддерживать точную температуру необязательно, только за ней нужно все время следить (хотя, разумеется, наличие термостата предпочтительнее). Помещая датчик в смесь льда и воды, с помощью резистора R20 устанавливают нулевые показания термометра. Затем датчик помещают в теплую воду вместе с образцовым термометром и с помощью резистора R14 устанавливают показания, соответствующие показаниям этого термометра. В обоих случаях размещать датчик нужно так, чтобы и он, и эталонный термометр не касались стенок, причем воду и смесь в термосе при этом следует обязательно перемешивать. Не забывайте, что каждый раз датчик следует выдерживать при соответствующей температуре не менее нескольких минут — до установления показаний.
Так как у нас при 0° мост находится в равновесии, то корректировки нуля и крутизны в целом независимы, и одной итерации достаточно, но на всякий случай следует несколько раз перенести датчик из нулевой температуры в теплую воду и обратно и при необходимости подкорректировать показания. Окончательно переменные резисторы заменяют на постоянные, которые подпаивают прямо к выводам основных (на схеме они показаны пунктиром). Эти дополнительные резисторы могут быть типа МЛТ — при условии, что основной резистор не слишком отличается от окончательного номинала. Если все сделано аккуратно, то погрешность такого термометра не превысит приблизительно 0,2 °C во всем диапазоне от -50 до +50 °C.
При использовании иных типов датчиков, например полупроводниковых, отрицательное напряжение питания в 572ПВ2 может, все же, понадобиться. Лучший способ, безусловно, — сделать нормальный двуполярный источник ±5 В. На рис. 17.11 приведены различные варианты паллиативных решений.
Рис. 17.11. Варианты организации отрицательного напряжения питания для 572ПВ2
Первый вариант (рис. 17.11, а) представляет собой однополярный источник +10 В с искусственным расщеплением. Расщепитель представляет собой просто повторитель напряжения на ОУ с умощненным выходом на комплементарных транзисторах. Обратите внимание на схему включения стабилизатора LM78L09, которая позволяет получить напряжение несколько большее, чем номинальное. Излишне предупреждать, что питание индикаторов при такой схеме обязательно должно осуществляться от отдельного источника.
Вторая схема (рис. 17.11, б) представляет собой инвертор-преобразователь положительного питания +5 В в отрицательное. Различных типов таких инверторов выпускается очень много, здесь выбран простейший нестабилизированный вариант. Преимущество преобразователя 1168ЕП1 (ICL7660, МАХ 1044) — в простоте включения, недостаток — высокое выходное сопротивление, так что при входном напряжении +5 В уже при потребляемом токе 20 мА отрицательное выходное напряжение снижается по абсолютной величине до 4,0 В (величина -4,4 В показана условно). Однако для нужд микросхемы 572ПВ2 этого вполне достаточно. Это полностью иллюстрирует рис. 17.11, в, на котором приведена схема инвертора напряжения, рекомендуемая самими разработчиками АЦП. Это на самом деле просто ухудшенный вариант того же инвертора, только работающий от тактовой частоты АЦП. Микросхема CD4009 может быть заменена на 561ПУ4 (CD4050) или на 561ЛН2 с соответствующей коррекцией разводки выводов. Подобные схемы могут особенно пригодиться для ПВ5 в случае батарейного питания — ведь обеспечить напряжение порядка 12–14 В, требующееся для нормального двуполярного источника ±5 В, в этом случае непросто.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОК