Спектроанализатор звука своими руками

Добавил пользователь Владимир З.
Обновлено: 05.10.2024

Для начала немного теории. Как известно все в подобных анализаторах используется быстрое преобразование Фурье и часто говорится, что ДПФ в подобных конструкция использовать нельзя, только БПФ да и то в на ассемблере. Я же использовал вместо этого дискретное преобразование Фурье(ДПФ) и преобразование по Уолшу. И в этой статье докажу, что можно использовать даже не только БПФ, а ДПФ написанный на С. Но сначала по порядку как из ДПФ получить простую функцию ДПФ и по Уолшу. ДПФ классически выглядит следующим образом:

Так как у мк мало ресурсов, то заменяют cos и sin на массивы размерностью N. Кроме того мк 8 разрядный и целесообразнее массивы хранить в виде 8 разрядных значений. Так как cos и sin меняется от -1 до 1, то лучше всего это диапазон увеличить в 127 раз, так как переменная 8 разрядная знаковая может хранить в себе значения от -127 до 127. Таким образом с учетом преобразований формулы будет:

где m меняется от 0 до N-1 с шагом равный k, когда m становится больше N, m уменьшают на N-1. Всего испльзуется 12 каналов, так что мк по силу ДПФ на такое маленькое количество каналов.

Например имеем 512 отсчетов АЦП нужно посчитать мнимую и действительную части для 150Гц при частоте дискретизации 19200 Гц:

Таким образом реальная и мнимая части получаются гораздо быстрее нежели традиционным способом, но в 127 раз больше. Для того, чтобы получить их реальный значения нужно поделить на 127, но у мк нет деления, поэму гораздо рациональнее будет не делить, а сдвинуть! Один сдвиг эквивалентен делению на 2. То есть если сдвинуть7 раз число то по сути поделили на 128! Так как потери в точности уже были неизбежны, то деление на 128 картины не изменит.

Дискретное преоразование Фурье для 150 Гц при частоте дискретизации 19200 Гц тогда выглядит следующим образом:

Для Уолша заменяем синусоиду и косинусоиду на меанды соответствующих периодов. То есть для sin от 0 до 180 градусов будет 1 а от >180 до 360 будет -1. Соответственно для синуса от 0 до 90 это 1, от 90 до 270 это -1 и от 270 до 360 это 1. Тем самым все вычисление мнимой и действительной части будут простым накапливанием сумм и разностей значения АЦП. То есть когда например синус равен 1, то значение АЦП прибавляется, а когда -1 отнимается. Недостаток такого решения заключается опять же в погрешности, которая неизбежно увеличивается и достигает 20%. Но так как в моей конструкции всего 8 значений то опять же существенно разницы мало кто заметит.

Пример реализации расчета мнимой и действительной части для 150 Гц при частоте дискретизации 19200 и 512 отсчетов:

И так получив мнимую и действительную части необходимо найти амплитуду спектра. Для этого необходимо найти корень из сумм квадратов мнимой и действительной части. Но если воспользоваться функцией из библиотеки math извлечение получится долгим и функция к тому же съест не хилый кусок от ПЗУ. Немного покопавшись в интернете я нашел элегантную функцию которую потом еще немного упростил в силу того, что она оперирует маленькими значениями. Вот это функция:

Сравнив эту функцию и функцию из библиотеки math пришел к выводу, что ее точности вполне хватает, чтобы результат был одинаков. Сама функция весит 2% против 12% от ПЗУ мк. Кроме того вычисляет гораздо быстрее.

Но как же получилось, что мк успевает расчитать 12 каналов да еще и в ДПФ. Кроме всех ухищрений со сдвигом вместо деления и быстрой функции квадрата есть еще одна уловка. Про которую я сейчас раскажу. Дело в том, что чем выше частота выделения тем уже полоса пропускания фильтра, так как переход cos и sin убыстряется и число периодов растет. А чем больше таких проходов cos и sin тем уже полоса пропускания. Например для частоты 150 Гц cos и sin повторяются 4 раза, а для 1,2 кГц cos и sin повторяются уже 32 раза. Отсюда видно, что для того чтобы на всех диапазонах полоса пропускания была равномерной и охватывал всех диапазон частот число отсчетов с ростом частоты фильтрации надо уменьшать. Например для 150 Гц бурутся все 512 отсчетов, для 600 Гц 256 отсчетов, а для 2,4 кГц 32 отсчета и так далее. Не трудно заменитить, что уменьшая число отсчетов с ростом частоты круто увеливается скорость ДПФ, так как умножений и сумм уже нужно делать гораздо меньше.

И так теоретическая часть подготовлена можно приступать к описанию конструкции. Вся конструкция состоит из одного микроконтроллера, 4-х транзисторов, нескольких конденсаторов и много резисторов. Резисторов лучше поставить много, хотя можно ограничиться только резисторами по горизонтали, т.е. по одному на каждый вывод порта. Схема классическая кроме единственного, что я использовал по 3 порта за 1 проход динамической развертки вместо 1 как везде делают. Это позволило уменьшить частоту развертки и уменьшить число транзистров до 4. Получилась фактически шкала на 24х4.


9,6 кГц, 4,8 кГц, 2,4 кГц,1,6 кГц, 1,2 кГц, 800 Гц, 600 Гц, 500 Гц, 400 Гц, 300 Гц, 150 Гц, 75 Гц. Программа проверялась и для 33 Гц и ДПФ успевал при тома что размерность cos и sin становится равный 512, но решил ограничится 75 Гц.

Здесь имеются частоты которые не кратны 2 в n-й степени, но тем не менее вычисляются. Например 400 Гц при делении на 19200 получаем 48 которое не кратно 2 в степени n. Выход из положение я выбрал взяв близкое число к числу 2 в степени n. Наиболее близкое это 240 оно близко к 256. То есть из 512 мы взяли только 240 отсчетов. Кроме того нельзя просто взять просто близкое. Например мы могли взять и 480 которое близко к 512, но тем не менее взяли близкое к 256. Объяснение этому в том, что на разных частотах число отсчетов влияет на полосу пропускания. Чем больше число отсчетов тем уже полоса пропускания. Связано это с тем что на высокой частоте косинус проходит гораздо быстрее период нежели на низкой и амплитуда вычисляется на столько точно, что соседние частоты просто выбрасываются и между частотами образуются слепые зоны частот которые анализатором не воспринимаются. Для того, чтобы анализатор воспринимал все частоты и охватывал весь спектр необходимо на высоких частотах расширить полосу взяв меньше отсчетов, а на низких как можно больше сузить взяв отсчетов соответственно больше. Таким образом на путем практического подбора числа отсчетов я подобрал такие:

9,6 кГц 16 отсчетов, 4,8 кГц 32 отсчета, 2,4 кГц 32 отсчета, 1,6 кГц 60 отсчетов, 1,2 кГц 64 отсчета, 800 Гц 240 отсчетов, 600 Гц 256 отсчетов, 500 Гц 252 отсчета, 400 Гц 240 отсчетов, 300 Гц 512 отсчетов, 150 Гц 512 отсчетов, 75 Гц 512 отсчетов.

Еще один подводный камень получился на частоте 9,6 кГц. Так как мнимой части нет(это легко проверить подставив в формулу выше при 512 отсчетах 256 номер спектра и синус будет всегда равен 0), то реальная часть может достаточно сильно изменяться за счет того, что значение косинуса будет вычисляться через раз в противофазе к основному сигналу. То есть будет вычисляться раз. Для того, чтобы этого не было необходимо вычислить хотя бы 2 значения реальной части сдвинутой на 90 градусов и выбрать максимальный из двух значений.

Алгоритм программы накопление 512 отсчетов в промежутке перевод мк в режим сна и пробуждение когда очередной отсчет готов. Кроме того 150 Гц происходит развертка светодиодов — это раз в 128 от частоты дискретизации в 19200. То есть до того как ацп снимет все отсчеты он успеет полностью провести одну полную развертку. Как только все отсчеты готовы в основном цикле программы происходит вычисление всех амплитуд спектра. В это время развертка продолжается, но мк не впадает в сон, а считает амплитуды. Как только амплитуды посчитаны мк переводится в сон и программа повторяется заново. Амплитуды рассчитываются исходя из 20 дб диапазона, то есть прологарифмированы.

Исходя из времени на получение всех отсчетов и время на расчет всех амплитуд частота обновления находится в районе 10-15 Гц.

Этот анализатор предназначен для встраивания в УМЗЧ и другие устройства, предназначенные для воспроизведения музыки и другой акустической информации. Он позволяет наблюдать на светодиодном табло текущее распределение энергии звукового сигнала по семи частотным полосам, середины которых лежат в интервале от 63 до 16000 Гц.

Рис. 1. Схема семиполосного анализатора спектра

С делителя напряжения R21R22 сигнал амплитудой 100. 150 мВ подан на вход семиполосного фильтра, собранного на специализированной микросхеме MSGEQ7P [2] DA2. От усиления входного сигнала и АРУ можно отказаться, подав входной сигнал на разъём XS2. При этом нужно снять перемычку S1, чтобы разорвать соединение выхода УМЗЧ DA1 с входом микросхемы DA2.

Длительность формируемого элементом DD1.1 импульса Reset высокого логического уровня задана постоянной времени цепи R7C1. Через элемент DD1.2, резистор R24 и транзистор VT1 он поступает также на вход R счётчика DD2 и устанавливает его в исходное состояние: на выходе 0 (выводе 3) - высокий уровень, на остальных выходах - низкий.

Установившийся на выходе элемента DD1.3 по окончании задержанного цепью R12C8 импульса Reset высокий уровень разрешает работу мультивибратора на элементе DD1.4. Длительность формируемых им импульсов Strobe зависит от скорости разрядки конденсатора C10 через резисторы R15, R18 и диод VD1, а пауз между ними - от скорости зарядки этого конденсатора через резистор R18 и диод VD2.

Микросхема DA2 содержит семь полосовых фильтров с центральными частотами 63, 160, 400 Гц и 1, 2,5, 6,25 и 16 кГц. Их АЧХ соответствуют колебательным контурам с добротностью 6. К выходам фильтров в микросхеме подключены выпрямители, выходные сигналы которых встроенный коммутатор на семь положений поочерёдно подаёт на выход микросхемы. Первый по окончании импульса Reset нарастающий перепад импульса Strobe соединяет с выходом коммутатора выход выпрямителя фильтра 63 Гц. Время установления выходного сигнала - 36 мкс. Каждый следующий нарастающий перепад Strobe переключает фильтры в направлении увеличения частоты по кругу до тех пор, пока вновь не поступит импульс Reset.

По нарастающим перепадам импульсов Strobe срабатывает и счётчик-дешифратор DD2. "Бегущий" по его выходам высокий логический уровень поочерёдно через ключи микросхемы TD62783APG [3] DA4 подключает аноды светодиод-ныхшкал HL1-HL7 к цепи +5 В.

Сигнал с выхода микросхемы DA2 поступает на вход преобразователя напряжения в позиционный код LM3914N-1 [4] DA3. Чем больше поданное на его вход SIG напряжение, тем больше выходов этой микросхемы будет включено и тем выше будет светящийся столбик на подключённой в этот момент к источнику питания светодиодной шкале.

Печатная плата для анализатора не разрабатывалась. Он собран на макетной плате. Однако светодиодные шкалы размещены на печатной плате, чертёж которой показан на рис. 2. В собранном виде эта плата изображена на рис. 3.

Рис. 2. Светодиодные шкалы на печатной плате

Рис. 3. С ветодиодные шкалы на плате в сборе

При правильной сборке устройство заработает сразу же. Нужно лишь проконтролировать длительности низкого (20. 30 мкс) и высокого (1. 1,4 мс) логических уровней импульсов Strobe на выходе элемента DD1.4. После этого подайте на разъём XS1 сигнал частотой 1 кГц и амплитудой не менее 1 В, при которой в микросхеме DA1 гарантированно работает АРУ. Наблюдая на экране осциллографа сигнал на выводе 3 микросхемы DA2, подстроечным резистором R22 установите амплитуду "столбика" осциллограммы, соответствующего частоте 1 кГц, равной 3. 3,5 В.

Поскольку на выходах фильтров даже в отсутствие сигнала на их входах имеется небольшое напряжение смещения, возможно свечение нижних элементов светодиодной шкалы. Для его устранения соедините между собой все контакты разъёмаXS1 и, перемещая движок подстроечного резистора R11, погасите нижние сегменты. Подстроечным резистором R6 отрегулируйте яркость свечения светодиодов, он управляет источниками выходного тока в микросхеме DA3. Последнюю регулировку (подстроечным резистором R17) выполните при нормальной работе анализатора так, чтобы светящиеся столбики на светодиодных шкалах были как можно выше, но не слишком часто достигали предельной высоты.

Для формирования сигналов Reset, Strobe и управления индикатором вместо узла на микросхемах DD1 и DD2 можно применить микроконтроллер ATtiny2313A-PU. Схема его подключения к анализатору показана на рис. 4. Предварительно нужно удалить из анализатора микросхемы DD1, DD2, диоды VD1, VD2, транзистор VT1, резисторы R7, R12, R15, R18, R24, R25, конденсаторы C1, C8, C10.

Рис. 4. Схема подключения микроконтроллер ATtiny2313A-PU к анализатору

И ещё несколько слов о микросхеме MSGEQ7P. Она может тактироваться как от внутреннего генератора, так и от внешнего частотой не более 500 кГц, который подключают к входу CKIN DA2. При использовании внутреннего генератора тактовая частота зависит от постоянной времени цепи R13C6. Сетка частот 63-16000 Гц получается при тактовой частоте 165 кГц. Пропорционально ей изменяются и все частоты сетки. Тактовые импульсы от внешнего генератора подают на вывод 8 этой микросхемы, отключив от него конденсатор С6.

Минимальный период повторения импульсов Strobe - 72 мкс. Его можно увеличить, но следует иметь в виду, что в микросхеме после полосовых фильтров, детекторов и коммутатора имеется ещё конденсатор, запоминающий уровень сигнала. Поэтому с началом каждого импульса Strobe сигнал на выходе быстро устанавливается, а в течение его медленно спадает.

На рис. 5 показаны осциллограммы сигналов на выводе 3 счётчика DD2 (жёлтого цвета) и на выводе 3 микросхемы DA2 (зелёного цвета) при входном сигнале частотой 1 кГц. Скорость развёртки - 200 мс/дел. Хорошо видны медленный спад вершины импульса на выходе фильтра 1 кГц и смещение напряжения на выходах остальных фильтров.

Рис. 5. Осциллограммы сигналов

Анализаторы спектра, подобные микросхеме MSGEQ7P, имеются в аудиопроцессорах TDA7416, TDA7419, а также в микросхемах BA3826, BA3830, BA3834 и BA3835, но MSGEQ7P проще в применении и упакована в удобный для монтажа корпус DIP8.

Автор: Н. Остроухов, г. Сургут Тюменской обл.

Мнения читателей

Нет комментариев. Ваш комментарий будет первый.

Вы можете оставить свой комментарий, мнение или вопрос по приведенному выше материалу:

И так, краткие технические характеристики:
Индикация частот: 31Hz, 62Hz, 125Hz, 250Hz, 500Hz, 1kHz, 2kHz, 4kHz, 8kHz, 16kHz
Размер матрицы - 10х10
Возможные режимы: Точка, линия, регистрация пиков.
Напряжение питания - 12V
Потребляемая мощность - Зависит от используемых светодиодов в матрице.
Тип входящего сигнала: Линейный стерео / линейный моно




По схеме видно, что устройство состоит из двух "блоков", сама матрица и управляющая плата. Печатная плата

Схема не сложная, все реализовано на одном контроллере фирмы ATMEL Atmega8.
Кварц в схеме используется на 18mhz. Микросхема CD4028 имеет советский аналог К176ИД1.

Светодиод на плате установлен для индикации входного напряжения +12V, устанавливать его не обязательно.
Дроссель, идущий к микросхема CD4028 (К176ИД1), играет сравнительно важную роль, т.к. при использовании не очень качественных источников питания данная микросхема (дешифратор) может работать не корректно. Однако при питании от качественного источника - дроссель можно заменить перемычкой.
Перемычки на плате заменяются переключателями, ими и устанавливается режим индикации.
Марки транзисторов не критичны, подойдут любые PNP и NPN транзисторы


Прошивка
Ну и несколько фото что у меня получилось на данный момент))


Программа разработана C. Zeitnitz и является бесплатной, но только для частного использования. Лицензия на программу стоит около 1500 рублей, и есть еще так называемая “частная лицензия” – стоимостью около 400 рублей, но это скорее пожертвование автору на дальнейшее совершенствование программы. Мы, естественно, будем пользоваться бесплатной версией программы, которая отличается только тем, что при ее запуске каждый раз появляется окошко с предложением купить лицензию.

Для начала давайте разберемся с “понятиями”:
Осциллограф – прибор предназначенный для исследования, наблюдения, измерения амплитудных и временных интервалов.
Осциллографы классифицируются:
♦ по назначению и способу вывода информации:
– осциллографы с периодической разверткой для наблюдения сигналов на экране (на Западе их называют oscilloscop)
– осциллографы с непрерывной разверткой для регистрации кривой сигнала на фотоленте (на Западе называются oscillograph)
♦ по способу обработки входного сигнала:
– аналоговый
– цифровой

Программа работает в среде не ниже W2000 и включает в себя:
- двухканальный осциллограф с частотой пропускания (зависит от звуковой карты) не менее чем от 20 до 20000 Гц;
– двухканальный генератор сигналов ( с аналогичной генерируемой частотой);
– анализатор спектра
– а также имеется возможность записи звукового сигнала для его последующего изучения

Каждая из этих программ имеет дополнительные возможности, которые мы рассмотрим в ходе их изучения.

Начнем мы с генератора сигналов (Signalgenerator):


Генератор сигналов, как я уже говорил, – двухканальный – Channel 1 и Channel 2.
Рассмотрим назначение его основных переключателей и окошек:
1 – кнопки включения генераторов;
2 – окно установки формы выходного сигнала:
sine – синусоидальный
triangle - треугольный
square - прямоугольный
sawtooth - пилообразный
white noise – белый шум
3 – регуляторы амплитуды выходного сигнала (максимальная – 1 вольт);
4 – регуляторы установки частоты (нужную частоту можно установить вручную в окошках под регуляторами). Хотя на регуляторах максимальная частота – 10 кГц, но в нижних окошках можно прописать любую допускаемую частоту (зависит от звуковой карты);
5 – окошки для выставления частоты вручную;
6 – включение режима “Sweep – генератор”. В этом режиме выходная частота генератора периодически изменяется от минимального значения установленного в окошках “5” до максимального значения установленного в окошках “Fend” в течение времени, установленного в окошках “Time”. Этот режим можно включить или для любого одного канала или сразу для двух каналов;
7 – окна для выставления конечной частоты и времени Sweep режима;
8 – программное подключение выхода канала генератора к первому или второму входному каналу осциллографа;
9 - установка разности фаз между сигналами с первого и второго каналов генератора.
10 - установка скважности сигнала (действует только для прямоугольного сигнала).

Теперь давайте рассмотрим сам осциллограф:


1 – Amplitude - регулировка чувствительности канала вертикального отклонения
2 – Sync – позволяет (установив или сняв галочку) производить раздельную, или одновременную регулировку двух каналов по амплитуде сигналов
3, 4 – позволяет разнести сигналы по высоте экрана для их индивидуального наблюдения
5 – установка времени развертки (от 1 миллисекунды до 10 секунд, при этом в 1 секунде – 1000 миллисекунд)
6 – запуск/остановка работы осциллографа. При остановке на экране сохраняется текущее состояние сигналов, а также появляется копка Save (16) позволяющая сохранить текущее состояние на компьютере в виде 3-х файлов (текстовые данные исследуемого сигнала, черно-белое изображение и цветное изображение картинки с экрана осциллографа в момент остановки)
7 – Trigger – программное устройство, которое задерживает запуск развертки до тех пор, пока не будут выполнены некоторые условия и служит для получения стабильного изображения на экране осциллографа. Имеется 4 режима:
– включение/выключение. При выключенном триггере, изображение на экране будет выглядеть “бегущим” или даже “размазанным”.
– автоматический режим. Программа сама выбирает режим (нормальный или одиночный).
– нормальный режим. В этом режиме осуществляется непрерывная развертка исследуемого сигнала.
– одиночный режим. В этом режиме осуществляется одноразовая развертка сигнала ( с промежутком времени, установленным регулятором Time).
8 – выбор активного канала
9 – Edge – тип запуска сигнала:
- rising – по фронту исследуемого сигнала
– falling – по спаду исследуемого сигнала
10 – Auto Set – автоматическая установка времени развертки, чувствительности канала вертикального отклонения Amplitude, а так-же изображение выгоняется в центр экрана.
11 - Channel Mode – определяет как будут выводится сигналы на экран осциллографа:
– single – раздельный вывод двух сигналов на экран
- СН1 + СН2 – вывод суммы двух сигналов
– СН1 – СН2 – вывод разницы двух сигналов
– СН1 * СН2 – вывод произведения двух сигналов
12 и 13 – выбор отображения на экране каналов (или любой из двух, или два сразу, рядом изображается величина Amplitude)
14 – вывод осциллограммы канала 1
15 – вывод осциллограммы канала 2
16 – уже проходили – запись сигнала на компьютер в режиме остановки осциллографа
17 – шкала времени ( у нас регулятор Time стоит в положении 10 миллисекунд, поэтому шкала отображается от 0 до 10 миллисекунд)
18 – Status – показывает текущее состояние триггера а также позволяет выводить на экран следующие данные:
- HZ and Volts – вывод на экран текущей частоты напряжения исследуемого сигнала
– cursor – включение вертикальных и горизонтальных курсоров для измерения параметров исследуемого сигнала
– log to Fille – посекундная запись параметров исследуемого сигнала.

Производство измерений на осциллографе

Для начала давайте настроим генератор сигналов:

1. Включаем канал 1 и канал 2 (загораются зеленные треугольники)
2. Устанавливаем выходные сигналы – синусоидальный и прямоугольный
3. Устанавливаем амплитуду выходных сигналов равную 0,5 (генератор генерирует сигналы с максимальной амплитудой 1 вольт, и 0,5 будет означать амплитуду сигналов равную 0,5 вольта)
4. Устанавливаем частоты в 50 Герц
5. Переходим в режим осциллографа

Измерение амплитуды сигналов:


1. Кнопкой под надписью Measure выбираем режим HZ and Volts, ставим галочки у надписей Frequency и Voltage. При этом у нас сверху появляются текущие частоты для каждого из двух сигналов (почти 50 герц), амплитуда полного сигнала Vp-p и эффективное напряжение сигналов Veff.
2. Кнопкой под надписью Measure выбираем режим Cursors и ставим галочку у надписи Voltage. При этом у нас появляются две горизонтальные линии, а внизу надписи, показывающие амплитуду положительной и отрицательной составляющей сигнала (А), а также общий размах амплитуды сигнала (dA).
3. Выставляем горизонтальные линии в нужном нам положении относительно сигнала, на экране мы получим данные по их амплитуде:


Измерение временных интервалов:


Проделываем те-же операции, что и для измерения амплитуду сигналов, за исключением – в режиме Cursors галочку ставим у надписи Time. В результате вместо горизонтальных мы получим две вертикальные линии, а внизу будет высвечиваться временной интервал между двумя вертикальными линиями и текущая частота сигнала в этом временном интервале:


Определение частоты и амплитуды сигнала

В нашем случае специально высчитывать частоту и амплитуду сигнала нет необходимости – все отображается на экране осциллографа. Но если вам придется воспользоваться первый раз в жизни аналоговым осциллографом и вы не знаете как определить частоту и амплитуду сигнала мы в учебных целях рассмотрим и этот вопрос.

Установки генератора оставляем как и были, за исключением – амплитуду сигналов устанавливаем 1,0, а установки осциллографа выставляем как на картинке:

Регулятор амплитуды сигнала выставляем на 100 милливольт, регулятор времени развертки на 50 миллисекунд, и получаем картинку на экране как сверху.

Принцип определения амплитуды сигнала:
Регулятор Amplitude у нас стоит в положении 100 милливольт, а это означает, что цена деления сетки на экране осциллографа по вертикали составляет 100 милливольт. Считаем количество делений от нижней части сигнала до верхней (у нас получается 10 делений) и умножаем на цену одного деления – 10*100= 1000 милливольт= 1 вольт, что означает, что амплитуда сигнала у нас от верхней точки до нижней составляет 1 вольт. Точно так-же можно измерить амплитуду сигнала на любом участке осциллограммы.

Определение временных характеристик сигнала:
Регулятор Time у нас стоит в положении 50 миллисекунд. Количество делений шкалы осциллографа по горизонтали равно 10 (в данном случае у нас на экране помещается 10 делений), делим 50 на 10 и получаем 5, это значит что цена одного деления будет равна 5 миллисекундам. Выбираем нужный нам участок осциллограммы сигнала и считаем в какое количество делений он умещается ( в нашем случаем – 4 деления). Умножаем цену 1 деления на количество делений 5*4=20 и определяем что период сигнала на исследуемом участке составляет 20 миллисекунд.

Определение частоты сигнала.
Частота исследуемого сигнала определяется по обычной формуле. Нам известно, что один период нашего сигнала равен 20 миллисекунд, остается узнать сколько периодов будет в одной секунде- 1 секунда/20 миллисекунд= 1000/20= 50 Герц.

Анализатор спектра

Анализатор спектра – прибор для наблюдения и измерения относительного распределения энергии электрических (электромагнитных) колебаний в полосе частот.
Низкочастотный анализатор спектра (как в нашем случае) предназначен для работы в диапазоне звуковых частот и используется, к примеру, для определения АЧХ различных устройств, при исследовании характеристик шума, настройки различной радиоаппаратуры. Конкретно, мы можем определить амплитудно-частотную характеристику собираемого усилителя звуковой частоты, настроить различные фильтры и т.д.
Ничего сложного в работе с анализатором спектра нет, ниже я приведу назначение основных его настроек, а вы сами, уже опытным путем легко разберетесь как с ним работать.

Вот так выглядит анализатор спектра в нашей программе:


1. Вид отображения шкалы анализатора по вертикали
2. Выбор отображаемых каналов с генератора часто и вида отбражения
3. Рабочая часть анализатора
4. Кнопка записи текущего состояния осциллограммы при остановке
5. Режим увеличения рабочего поля
6. Переключение горизонтальной шкалы (шкалы частоты) из линейного в логарифмический вид
7. Текущая частота сигнала при работе генератора в свип-режиме
8. Текущая частота в позиции курсора
9. Указатель коэффициента гармоник сигнала
10. Установка фильтра для сигналов по частоте

Просмотр фигур Лиссажу

Фигуры Лиссажу – замкнутые траектории, прочерчиваемые точкой, совершающей одновременно два гармонических колебаниях в двух взаимно перпендикулярных направлениях. Вид фигур зависит от соотношения между периодами (частотами), фазами и амплитудами обоих колебаний.


Я не уверен, что эта функция программы вам пригодится, но если вдруг потребуется, то я думаю, что вам легко удастся разобраться в этой функции самостоятельно.

Функция записи звукового сигнала

Я уже говорил, что программа позволяет записать какой-либо звуковой сигнал на компьютере с целью его дальнейшего изучения. Функция записи сигнала не представляет сложностей и вы легко разберетесь как это делать:


Вид файлов, сохраняемый программой на компьютере в режиме остановки и записи текущей осциллограммы:

Читайте также: