Датчик шума (Troyka-модуль)

Датчик шума используется для слежения за уровнем шума или обнаружения громких сигналов: хлопков, стуков или свиста.

{{ :продукты:troyka:loudness:troyka-sound-loudness-sensor.4.jpg |

Элементы платы

{{ :продукты:troyka:loudness:microphone-annotation.png?nolink& |

Микрофон и электронная обвязка модуля

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

Почему мы не можем просто взять любой микрофон? Этому есть несколько причин.

Во-первых, сигнал от микрофона очень слаб. Настолько, что, если мы подключим его к аналоговому входу Arduino, то analogRead всегда будет возвращать 0. Перед тем как использовать, сигнал с микрофона необходимо усилить.

Во-вторых, даже усиленный звуковой сигнал — это всегда колебания. Поэтому показания микрофона очень зависят от того, в какой момент времени произошло измерение напряжения микроконтроллером. Даже при самом громком хлопке analogRead может вернуть 0.

Как видим, даже измерение максимальных значений амплитуды не даст четкую информацию об уровне громкости. Чтобы получить эту информацию, нужно делать измерения максимально часто и подвергать эти данные математической обработке. Численной характеристикой громкости является площадь под графиком звуковой волны. Именно её и «считает» электронная обвязка микрофона.

Потенциометр регулировки чувствительности

Потенциометр регулирует коэффициент усиления усилителя сигнала с микрофона. Он бывает полезен, если необходимо изменить условия срабатывания вашего устройства без изменения его прошивки. Чем выше чувствительность модуля, тем выше доля помех в полезном сигнале датчика. Мы рекомендуем начинать работу с модулем при среднем положении потенциометра. В таком случае чувствительность модуля будет легко изменить в любую сторону.

Контакты подключения трёхпроводного шлейфа

Модуль подключается к управляющей электронике двумя трёхпроводными шлейфами.

Назначение контактов трёхпроводного шлейфа:

  • Питание (V) — красный провод. На него должно подаваться напряжение от 3 до 5 В.
  • Земля (G) — чёрный провод. Должен быть соединён с землёй микроконтроллера.
  • Сигнал датчика шума (E) — жёлтый провод. Через него происходит считывание сигнала датчика уровня шума микроконтроллером.

Вторым шлейфом с пина S снимается сигнал аналогового микрофона.

Видеообзор

Пример использования

Отобразим показания датчика шума и микрофона на экране компьютера. В качестве управляющего микроконтроллера возьмём Arduino.

soundLoudnessSensor.ino
#define SOUND_PIN  A5
#define NOISE_PIN  A4
 
void setup() 
{
  // открываем монитор Serial-порта
  Serial.begin(9600);
}
 
void loop()
{
  // считываем показания микрофона
  int soundValue = analogRead(SOUND_PIN);
  // считываем показания уровня шума
  int noiseValue = analogRead(NOISE_PIN);
  Serial.print(soundValue);
  Serial.print("\t\t");
  Serial.println(noiseValue);
}

Принципиальная и монтажная схемы

Ресурсы