Компьютерный измерительный комплекс
Компьютерный звуковой генератор качающейся частоты
Двухканальный многотоновый генератор синусоидальных и шумовых сигналов звуковых и инфразвуковых частот предназначен для настройки и измерения параметров электронно-акустической аппаратуры, а также для моделирования сложных колебательных процессов. Генератор состоит из цифроаналоговых преобразователей (ЦАП) и управляющей программы. В качестве преобразователей используются двухканальные 16-, 24- или 32-битные ЦАП стандартной звуковой системы компьютера с допустимой частотой дискретизации (Fs) до 400 кГц. Генератор звуковых частот работает на любом IBM-PC или совместимом компьютере в операционной системе Windows 95/98/Me/NT/2000/2003/XP/Vista. Управляющая программа имеет размер всего 330 Кбайт вместе с кратким руководством на русском и английском языках и доступна для ознакомления на сайте.
Технические данные
Качество (коэффициент нелинейных и интермодуляционных искажений, точность, стабильность и диапазон частот) выходного сигнала ограничено только типом используемого ЦАП. Синтез всех сигналов осуществляется в реальном времени. Генератор может работать в следующих переключаемых режимах:
- генерация двух независимых непрерывных синусоидальных сигналов с регулируемым сдвигом фаз между каналами;
- генерация до восьми независимых колебательных процессов на каждый канал с раздельной установкой частоты и уровня, с регулируемой шумовой компонентой, а также редактируемым и сохраняемым списком настроек;
- генерация синусоидальных сигналов качающейся частоты в двух независимых каналах с регулируемой скоростью качания в линейном или логарифмическом масштабе времени;
- синхронное изменение частоты нескольких (до ста одновременно) осцилляторов, распределенных равномерно по частоте с регулируемой скоростью качания в линейном масштабе времени;
- генерация шумов: белого (с равномерным, треугольным или нормальным распределением по амплитуде), розового (1/f), броуновского (1/f2) в двух некоррелированных каналах;
- генерация колебаний пилообразной (прямой и перевернутой), а также треугольной формы;
- генерация колебаний прямоугольной формы в одном или в обоих каналах;
- амплитудная модуляция одного канала другим с регулируемой глубиной;
- цифровое суммирование двух каналов.
Три последних режима могут быть использованы одновременно с любым из вышеперечисленных.
Дополнительные возможности генератора:
- межканальная синхронизация регулировки частоты;
- полутоновый шаг установки частоты в соответствии с равномерно-темперированным музыкальным звукорядом;
- быстрый вызов часто используемых составных сигналов, в том числе, для измерения интермодуляционных искажений по стандартам SMPTE, ITU-R и DIN;
- синхронная противофазная регулировка амплитуды в каналах с сохранением суммарного уровня (стереопанорама);
- оперативное выключение и включение сигнала в одном или обоих каналах без остановки генерации;
- автоматическое, с фиксированным шагом, изменение амплитуды или фазы в пределах всего диапазона регулирования (для измерения амплитудных или фазовых зависимостей);
- добавление к выходному сигналу белого шума (с треугольным распределением и амплитудой, равной младшему значащему разряду) для уменьшения нелинейных искажений, обусловленных ошибкой квантования (dithering);
- возможность работы с одноканальными (моно), двухканальными (стерео) или четырехканальными устройствами ЦАП;
- запись синтезированных сигналов на диск в стандартном формате PCM (Pulse Code Modulation) с задаваемой длительностью звучания;
- циклическое воспроизведение ранее записанных сигналов;
- синхронизация запуска и остановки генерации, а также согласование формата данных при совместной работе с компьютерным анализатором;
- внешнее (со стороны других программ) управление основными функциями генератора и параметрами синтезируемого сигнала;
- сохранение всех без исключения настроек текущего сеанса работы в специальном файле конфигурации для их последующего использования.
Особенности реализации отдельных режимов
Одно из важных требований к компьютерному генератору — наименьшие затраты времени центрального процессора. Это совершенно необходимо, поскольку одновременно предусмотрена работа в реальном времени еще и двухканального комбинированного прибора, включающего в себя анализатор спектра, осциллограф, частотомер, фазометр, вольтметр постоянного и переменного тока, измеритель шумов и нелинейных искажений, мощности, плотности амплитудного распределения входного сигнала, также разработанного автором. Для ускорения работы управляющей программы генератора в ней применен табличный синтез синусоидального сигнала в сочетании с линейной интерполяцией между узлами таблицы. Дополнительно предусмотрена возможность изменения размера таблицы в зависимости от требуемой точности представления синусоидального сигнала. Размер таблицы синуса задается в диапазоне от 2 в степени 10 до 2 в степени 20 элементов на период, фактически строится только одна четвертая её часть. Все ресурсоёмкие вычисления при синтезе сигналов в генераторе выполняются в целочисленной арифметике в реальном времени. В результате предпринятых мер степень загрузки центрального процессора при работе генератора в режиме синтеза двухтонового сигнала не превышает 7 % на весьма и весьма скромном процессоре P-166. Максимальный объем оперативной памяти, требуемый для работы самой программы, не превышает 4 Мб.
Синтез сигналов качающейся частоты в данном приборе осуществляется раздельно по каналам. Реализованы следующие циклические зависимости частоты от времени:
- прямая — частота увеличивается со временем;
- обратная — частота уменьшается со временем;
- треугольная — последовательная комбинация двух предыдущих режимов.
Все три вышеозначенных способа могут осуществляться в линейном или логарифмическом масштабе времени. В специальном режиме качающейся частоты одновременно генерируется до 100 осцилляторов, синхронно изменяющих свою частоту одним из трех указанных выше способов в линейном масштабе времени и расположенных равномерно в заданном диапазоне частот. Данный режим предназначен для быстрого измерения амплитудно-частотной характеристики исследуемых устройств с помощью спектрального анализатора. При цифровом суммировании сигналов, как между каналами, так и в случае генерации многотонового синусоидального сигнала, предусмотрен режим автоматического ограничения задаваемой амплитуды отдельных компонент. Это позволяет избежать переполнения цифровой разрядной сетки при суммировании и, как следствие, возникновения неконтролируемых искажений выходного сигнала. При отключении функции автоматического ограничения амплитуды переполнение также не допускается, но сигнал на выходе генератора может принимать форму ограниченной синусоиды, регулируемой амплитуды. Такой режим позволяет моделировать процессы ограничения, происходящие в различных усилительных трактах.
Для синтеза шумовых сигналов используется генератор псевдослучайных чисел, реализующий линейный конгруэнтный метод с основанием 2 в степени 32. Период корреляции генерируемого шума превышает два часа непрерывной работы при частоте дискретизации 48 кГц. Генератор псевдослучайных чисел сбрасывается в исходное состояние при каждом нажатии кнопки “Start”. При генерации белого шума с равномерным распределением по амплитуде используется одиночная последовательность псевдослучайных чисел. При генерации белого шума с нормальным распределением по амплитуде каждый отсчет выходного сигнала вычисляется как сумма восьми псевдослучайных чисел. Получаемый при этом сигнал имеет амплитудное распределение близкое к нормальному.
Для генерации розового шума, т.е. шума со спектральной плотностью обратно пропорциональной частоте, применен так называемый алгоритм Восса-Маккартни (Voss-McCartney). В основе этого метода лежит суммирование ряда источников белого шума в последовательно более низких октавах. В описываемом генераторе суммируется последовательность из 32-х таких источников с октавно понижающейся частотой, начиная с частоты дискретизации. Таким образом, диапазон частот, в котором выполняется зависимость спектральной плотности вида 1/f, составляет 31 октаву, перекрывая и звуковую и инфразвуковую области. Данный алгоритм обладает весьма высокой производительность и обеспечивает частотную зависимость спектральной плотности выходного сигнала близкую к идеальной (1/f). Отклонение (дифференциальная нелинейность) усредненной частотной зависимости сгенерированного таким способом сигнала от прямой линии не превышает 2 дБ, что достаточно для многих практических применений, например, для измерения электроакустических параметров громкоговорителей.
Для генерации броуновского шума, т.е. шума со спектральной плотностью обратно пропорциональной квадрату частоты, используется источник белого шума и цифровой рекурсивный фильтр низкой частоты с крутизной спада 6 дБ на октаву.
По умолчанию шум генерируется раздельно по каналам (стерео режим). При установке на индикаторе разности фаз положительной величины на выход обоих каналов поступает монофонический шумовой сигнал; при отрицательной разности фаз на выход каналов поступает противофазный шум.
Практические возможности
Компьютерные аналоги данного генератора звуковых частот, которые могли бы соперничать по качеству синусоидального сигнала, набору функций и удобству работы, автору неизвестны.
Применение в компьютере 16-битных звуковых карт среднего класса позволяет получить коэффициент нелинейных и интермодуляционных искажений синусоидального выходного электрического сигнала генератора не хуже 0.002%, относительную нестабильность и точность установки частоты не хуже 10 в степени -5. Таким образом, в звуковом диапазоне частот данный генератор не уступает по качеству сигнала очень неплохому промышленному генератору Г3-118. Использование в компьютере высококачественных 24-битных звуковых карт с рабочей частотой дискретизации до 200 кГц позволяет синтезировать звуковой синусоидальный сигнал превосходящий сигнал генератора Г3-118 по всем параметрам, кроме, быть может, только величины выходной мощности. В режиме качающейся частоты разработанный генератор во многих случаях способен заменить такой прибор, как РГ3-124.
В связи с тем, что описываемый генератор является двухканальным, то, очевидно, он может заменить сразу два традиционных (аппаратных) генератора в каждом из режимов. Наличие двух независимых каналов с регулируемой разностью фаз между ними позволяет использовать генератор для настройки и поверки фазометров инфразвукового и звукового диапазонов. Здесь данный прибор может успешно заменить калибратор фазы типа Ф1-4, значительно превосходя последний по точности установки величины фазового сдвига.
При генерации восьми независимых колебательных процессов на каждый канал описываемый прибор заменяет сразу 16 отдельных генераторов, работающих на две раздельные нагрузки. Многотоновый режим позволяет легко моделировать сложные составные сигналы для настройки и поверки измерителей нелинейных и интермодуляционных искажений звукового и инфразвукового диапазона. Подобные промышленные генераторы автору неизвестны.
В режиме синтеза шумов звукового диапазона частот разработанный генератор в большинстве применений вполне может заменить приборы Г2-37 и Г2-47.
Разработанный цифровой двухканальный генератор синусоидальных, прямоугольных и шумовых сигналов звуковой частоты позволяет строить экономичную и компактную измерительную лабораторию, обладающую в тоже время высокими метрологическими характеристиками, ограниченными только качеством используемого ЦАП.