Типичная схема
В одном из проектов (или гаджетов) требовалось сформировать аудиосигнал, отображающий изменяющийся уровень напряжения. Хм… это похоже на генератор, управляемый напряжением. Но этот сигнал был биполярным с размахом от –1 до +1 В. Линейная зависимость частоты от напряжения просто звучала неправильно, и в любом случае не могла обеспечить симметричный выходной сигнал в диапазоне ±1 октава, который я хотел.
Типичный, хорошо известный тип генератора, в схеме которого, правда, отсутствует возможность управления напряжением, показан на Рисунке 1. В начале цикла конденсатор C1 полностью заряжен. Затем он разряжается через резистор R1 до тех пор, пока не будет достигнуто опорное напряжение, показанное здесь как середина питания, после чего срабатывает ждущий мультивибратор, выдающий импульс включения транзистора Q1, который замыкает C1 на положительную шину питания, тем самым запуская следующий цикл. Выходной сигнал, представляющий собой экспоненциально спадающую пилу с постоянной амплитудой, снимается с верхней обкладки конденсатора C1 через буфер (не показан). (Строго говоря, операционный усилитель должен быть компаратором, поскольку используется как таковой). Конденсатор C1 обычно переключается для смены диапазонов, а резистор R1 используется для плавной настройки.
![]() |
|
Рисунок 1. | Отправной точкой этой конструкции является типичный релаксационный генератор с экспоненциально спадающим пилообразным выходным сигналом. |
Другой способ настройки – оставить R1 и C1 постоянными и изменять опорное напряжение. Уровень выходного сигнала теперь меняется, а закон настройки – экспоненциальный. Если нам нужна линейность зависимости высоты тона от напряжения, возможно, это будет хорошей отправной точкой?
Настройка
Экспоненциальный спад может не дать в точности такой кривой, которая нужна нам, но при небольшой доработке отдельные ее части будут достаточно близки к тому, чтобы быть полезными. В результате некоторых экспериментов была получена работоспособная схема, показанная на Рисунке 2.
Как сказано выше, двуполярное управляющее напряжение сравнивается с экспоненциально спадающим пилообразным сигналом для подстройки частоты генератора. Когда они совпадают, D-триггер U2a, используемый как источник нескольких разных напряжений (multi-supply multi-voltage, MSMV), запускается для формирования импульса сброса, чтобы на мгновение включить транзистор Q1 и сбросить напряжение на конденсаторе C1 до его максимального значения.
Основные сигналы схемы показаны на Рисунке 3.
![]() |
|
Рисунок 3. | Осциллограммы сигналов в схеме на Рисунке 2 на обоих краях ее двухоктавного диапазона. |
Обходим закон, чтобы сделать то, что хотим
Ключевым элементом этой конструкции является простой и скромный резистор R2. Сжимая и смещая кривую экспоненциального спада, он позволяет изменить аппроксимацию закона настройки таким образом, чтобы близкой к линейной на протяжении пары октав и более стала зависимость высоты тона от напряжения, а не частоты от напряжения: приращение управляющего напряжения теперь изменяет на довольно постоянное величину отношение частот, а не саму частоту. Наихудшее соответствие наблюдается на низкочастотном краю диапазона: погрешность составляет около 5% вблизи нижней точки калибровки, а ниже – еще хуже. (Полутон составляет примерно 7%). Использование резистора R2 сопротивлением 51 кОм дает наиболее близкое соответствие самой частоте нижней октавы, но среднее «звучание» в этой области лучше при 56 кОм.
При показанных номиналах компонентов выходная частота изменяется от 250 Гц до 1000 Гц для входных напряжений от –1 до +1 В, что близко к двум октавам вверх от «C4» (середина C: примерно 262 Гц, если мы определим A4 как точные 440 Гц) до «C6». (Кавычки здесь используются для того, чтобы отличать обозначения высоты тона от обозначений конденсаторов). Для разных диапазонов просто изменяйте емкость C1 или оба сопротивления R1 и R2, соотношение которых должно оставаться постоянным. Если управляющее напряжение опустится ниже примерно –1.5 В, колебания прекратятся в соответствии со значениями сопротивлений R1 и R2. При напряжении выше +1 В соответствие все еще остается приемлемым на протяжении половины октавы и более.
Триггер U2b делит частоту выходных импульсов генератора на 2, чтобы получить прямоугольные импульсы, которые выходная цепь преобразует в трапеции амплитудой около 1.1 В пик-пик (приблизительно –6 дБн). Хотя такой сигнал и не претендует на чистоту формы, теперь у него более мягкие и «более аналоговые» фронты, а не резкие цифровые.
Другие комментарии: MCP6002 дешевы и веселы. Усилитель MCP6022 лучше по характеристикам (намного быстрее и с входным смещением меньше 500 мкВ), но он дороже. При желании на основе неиспользованной половины микросхемы U1 можно сделать дополнительный фильтр выходного сигнала. Характеристики транзистора Q1 не критичны. ZVP3306A имеет сопротивление открытого канала до 15 Ом, но ширина импульса, управляющего его затвором, гарантирует, что конденсатор C1 будет полностью заряжен при любых условиях. Диапазон управляющих напряжений порядка ±1 В был как раз тем, что я хотел, но это была скорее счастливая случайность, а не задумка конструктора.
Теперь устройство делает то, что нужно, и готово к внедрению в проект (или гаджет). Однако…
Несколько дополнительных компонентов дают больше октав и увеличивают точность
Размышление над базовой схемой натолкнуло на интересную идею. Линейную характеристику зависимости частоты от напряжения можно реализовать двумя способами: один из них заключается в использовании линейного спада пилообразного сигнала и изменении управляющего напряжения так же, как мы делаем это с экспоненциальным спадом, а другой – в замене резистора R1 на управляемый источник тока и удалении R2. Если использовать их вместе, то закон настройки станет «квадратичным», что даст степенную зависимость, которая по своей сути обеспечивает гораздо лучшую линейность отклика по высоте тона. На Рисунке 4 показано, как это сделать.
Элементы Q2, U1b и R1 образуют источник втекающего тока. Управляющее им напряжение составляет половину от входного, что гарантирует, что транзистор Q2 никогда не насытится. C1 разряжается линейно, наклон регулируется напряжением VCON. Шины питания показаны как 0 В/+5 В, а не ±2.5 В, чтобы отразить более широкий диапазон перестройки, но выходная частота по-прежнему центрирована относительно примерно 520 Гц (близко к тону «C5») при значениях номиналов компонентов, указанных на схеме.
Требуемый диапазон управляющего напряжения теперь составляет примерно 840 мВ на октаву (или приблизительно 70 мВ на полутон). Отклик по высоте тона почти точно линейный в средних двух октавах, и все еще приличный для двух октав и более вокруг них. Ошибки наиболее значительны на низкочастотном краю диапазона, поскольку там источник тока испускает дух (или электроны). Усилитель MCP6022 используется из-за его лучших характеристик, но остальная часть схемы практически не изменилась.
Хотя диапазон в четыре с лишним октавы слишком велик для моего целевого приложения, повышенная точность всегда приветствуется, и эти лучшие характеристики открывают путь к возможному музыкальному использованию.
Это будет показано в Части 2, но сначала мы посмотрим, как модифицировать схему для работы с более высокими напряжениями питания, как реализовать ее, используя только дискретные компоненты, помимо операционного усилителя, и как получить на выходе приличную синусоиду.