Оглавление:
- Шаг 1: стандартная настройка укелеле
- Шаг 2: Создание чисто цифровой теоретической модели
- Шаг 3: Далее аналоговая схема
- Шаг 4. Считывание аналоговых сигналов с помощью DAQ Assistant
- Шаг 5: Заключение
Видео: Тюнер Ukelele с использованием LabView и NI USB-6008: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
В качестве проблемно-ориентированного учебного проекта для моего курса LabVIEW & Instrumentation в Хамберском колледже (технология электронной инженерии) я создал тюнер для укулеле, который принимал аналоговый вход (тон струны укулеле), находил основную частоту, решал, какую ноту пробовать. чтобы настроить, и сообщить пользователю, нужно ли настраивать строку вверх или вниз. Устройство, которое я использовал для преобразования аналогового входа в цифровой, было National Instruments USB-6008 DAQ (устройство сбора данных), а пользовательский интерфейс был реализован с помощью LabVIEW.
Шаг 1: стандартная настройка укелеле
Первым шагом было выяснение основных частот музыкальных нот и диапазона, на который обычно настраиваются струны для укулеле. Я использовал эти две диаграммы и решил, что сделаю свой тон в диапазоне от 262 Гц (C) до 494 Гц (High B). Все, что ниже 252 Гц, будет считаться слишком низким, чтобы программа могла расшифровать, какая нота пыталась сыграть, а все, что выше 500 Гц, будет считаться слишком высоким. Программа, однако, по-прежнему сообщает пользователю, на сколько Гц он находится от ближайшей дешифруемой ноты, и нужно ли настраивать строку вверх (слишком низкая нота) или вниз (нота слишком высокая), чтобы достичь доступной ноты.
Кроме того, я создал диапазоны для каждой ноты, а не только для одной частоты, чтобы программе было легче найти, какая нота воспроизводится. Например, программа сообщит пользователю, что играется C, если основная частота ноты находится между 252 Гц (на полпути к B) и 269 Гц (на полпути к C #), но для того, чтобы решить, нужно ли ее настраивать или ниже, он все равно будет сравнивать воспроизводимую ноту с основной частотой до, которая составляет 262 Гц.
Шаг 2: Создание чисто цифровой теоретической модели
Прежде чем погрузиться в аналоговую сторону проекта, я хотел посмотреть, смогу ли я создать программу LabVIEW, которая, по крайней мере, выполняла бы основную обработку звукового сэмпла, такую как чтение аудио-сэмпла.wav, поиск основной частоты и создание необходимые сравнения с частотной диаграммой, чтобы определить, нужно ли настраивать звук вверх или вниз.
Я использовал SoundFileSimpleRead. VI, доступный в LabVIEW, чтобы прочитать файл.wav по указанному мной пути, поместить сигнал в индексированный массив и подать этот сигнал в HarmonicDistortionAnalyzer. VI, чтобы найти основную частоту. Я также взял сигнал из SoundFileSimpleRead. VI и подключил его непосредственно к индикатору диаграммы формы волны, чтобы пользователь мог видеть форму волны файла на передней панели.
Я создал 2 структуры корпуса: одну для анализа проигрываемой ноты, а другую - для определения того, нужно ли повернуть струну вверх или вниз. В первом случае я создал диапазоны для каждой ноты, и если сигнал основной частоты из HarmonicDistortionAnalyzer. VI находился в этом диапазоне, он сообщал бы пользователю, какая нота воспроизводится. Как только нота была определена, значение проигрываемой ноты было вычтено из фактической основной частоты ноты, а затем результат был перенесен во второй случай, который определил следующее: если результат больше нуля, то струну необходимо настроить вниз; если результат ложный (не выше нуля), тогда проверяется, равно ли значение нулю, и если истинно, то программа уведомит пользователя о том, что нота настроена; если значение не равно нулю, это означает, что оно должно быть меньше нуля и что строку необходимо настроить. Я взял абсолютное значение результата, чтобы показать пользователю, на сколько Гц он отошел от истинной ноты.
Я решил, что индикатор измерителя будет лучше всего, чтобы визуально показать пользователю, что нужно сделать, чтобы сделать заметку согласованной.
Шаг 3: Далее аналоговая схема
В этом проекте я использовал конденсаторный электретный микрофон CMA-6542PF. Технические данные этого микрофона приведены ниже. В отличие от большинства конденсаторных микрофонов этого типа, мне не нужно было беспокоиться о полярности. В таблице данных показано, что рабочее напряжение для этого микрофона составляет 4,5 - 10 В, но рекомендуется 4,5 В, а потребление тока составляет не более 0,5 мА, так что на это следует обратить внимание при разработке схемы предусилителя для него. Рабочая частота составляет от 20 Гц до 20 кГц, что идеально подходит для звука.
Я реализовал простую схему предусилителя на макетной плате и отрегулировал входное напряжение, убедившись, что на микрофоне не больше 0,5 мА. Конденсатор используется для фильтрации шума постоянного тока, который может быть связан с электрическими сигналами (выходными), и конденсатор имеет полярность, поэтому обязательно подключите положительный конец к выходному контакту микрофона.
После завершения схемы я подключил выход схемы к первому аналоговому входному контакту (AI0, контакт 2) USB-6008 и подключил заземление макета к аналоговому контакту заземления (GND, контакт 1). Я подключил USB-6008 к ПК через USB, и пришло время внести изменения в программу LabVIEW, чтобы она принимала реальный аналоговый сигнал.
Шаг 4. Считывание аналоговых сигналов с помощью DAQ Assistant
Вместо использования SoundFileSimpleRead. VI и HarmonicDistortionAnalyzer. VI я использовал DAQ Assistant. VI и ToneMeasurements. VI для работы с аналоговым входом. Настройка DAQ Assistant довольно проста, и сам VI проведет вас через все шаги. ToneMeasurements. VI имеет множество выходов на выбор (амплитуда, частота, фаза), поэтому я использовал частотный выход, который дает основную частоту входного тона (из DAQ Assistant. VI). Выходные данные ToneMeasurements. VI необходимо было преобразовать и поместить в массив, прежде чем его можно будет использовать в структурах case, но остальная часть программирования / индикаторов LabVIEW осталась прежней.
Шаг 5: Заключение
Проект удался, но недостатков определенно было много. Когда я работал с тюнером в шумном классе, программе было очень сложно определить, что такое шум, а какой тон воспроизводится. Вероятно, это связано с очень простой схемой предусилителя и очень дешевым микрофоном. Однако, когда было тихо, программа работала с хорошей надежностью, определяя ноту, которую пытались сыграть. Из-за нехватки времени я не вносил никаких дополнительных изменений, но если бы мне пришлось повторить проект, я бы купил более качественный микрофон и потратил больше времени на схему предусилителя.
Рекомендуемые:
Как сделать тюнер для гитары на Arduino: 4 шага
Как сделать гитарный тюнер для Arduino: Это инструкции по созданию гитарного тюнера из Arduino и нескольких других компонентов. Обладая базовыми знаниями в области электроники и программирования, вы сможете создать этот гитарный тюнер. Прежде всего, вы должны знать, из каких материалов. Ма
Мониторинг ускорения с использованием Raspberry Pi и AIS328DQTR с использованием Python: 6 шагов
Мониторинг ускорения с помощью Raspberry Pi и AIS328DQTR с использованием Python: Ускорение конечно, я думаю, в соответствии с некоторыми законами физики. - Терри Райли Гепард использует удивительное ускорение и быстрое изменение скорости при преследовании. Самое быстрое существо, выброшенное на берег, время от времени использует свой максимальный темп, чтобы поймать добычу
Гитарный тюнер Arduino: 3 шага
Гитарный тюнер Arduino: вот гитарный тюнер, который я сделал с Arduino Uno, и кое-какие вещи, которые у меня валялись. Это работает следующим образом: есть 5 кнопок, каждая из которых будет воспроизводить разные ноты в стандартной настройке гитары EADGBE. Поскольку у меня было всего 5 кнопок, я написал код, так что
Тюнер: 9 ступеней
Тюнер: Этот проект был разработан для создания гитарного тюнера с использованием Vivado и 7-сегментного дисплея. Как только тюнер найдет частоту введенного звука, тюнер сравнит это значение со списком жестко закодированных значений для точных частот, которые известны как
ЭКГ своими руками с использованием Analog Discovery 2 и LabVIEW: 8 шагов
Сделай сам ЭКГ с использованием Analog Discovery 2 и LabVIEW: в этом руководстве я покажу вам, как сделать самодельный электрокардиограф (ЭКГ). Цель этой машины - усилить, измерить и записать естественный электрический потенциал, создаваемый сердцем. ЭКГ может раскрыть массу информации о