Датчик уровня звука: различия между версиями

Материал из me-robotics wiki
Строка 30: Строка 30:
  
 
'''Программный код'''
 
'''Программный код'''
 
+
// Подключаем необходимые библиотеки
 
#include <OneWire.h>
 
#include <OneWire.h>
 
#include <DallasTemperature.h>
 
#include <DallasTemperature.h>
 +
 +
// Шину данных подключаем к выводу №2 Arduino
 +
#define ONE_WIRE_BUS 2
 +
 +
// Создаём экземпляр класса для нашей шины и ссылку на него
 +
OneWire oneWire(ONE_WIRE_BUS);
 +
DallasTemperature sensors(&oneWire);
 +
 +
// ФУНКЦИЯ ПРЕДУСТАНОВОК
 +
void setup(void)
 +
{
 +
  Serial.begin(9600); // Инициализация серийного порта
 +
  sensors.begin(); // Инициализация шины
 +
}
 +
 +
// ОСНОВНОЙ ЦИКЛ
 +
void loop(void)
 +
{
 +
Serial.print("Reading Temperature...");
 +
// Подаём команду на чтение
 +
sensors.requestTemperatures();
 +
Serial.println("Read");
 +
Serial.print("Sensor Temperature 1: ");
 +
// Отображаем значение температуры
 +
Serial.print(sensors.getTempCByIndex(0));
 +
}

Версия 22:17, 31 мая 2021

Датчик уровня звука

Датчик представляет собой небольшую плату с установленным на ней микрофоном, микрофонным усилителем, регулятором чувствительности в виде переменного резистора. Микрофон преобразует звуковые колебания в колебания электрического тока. Сигнал с микрофона необходимо усилить с помощью компаратора L293. Датчик имеет выход с логическим уровнем. Сработал датчик – на выходе появился логический 0.  Регулятором чувствительности можно выбирать, от какого звука будет срабатывать датчик - от слабого, громкого или очень громкого звука. Датчик имеет 3 вывода. Назначение выводов следующее:

  • Vcc – питание датчика;
  • GND – земля;
  • OUT - цифровой выход;

Датчик имеет также светодиод, сигнализирующих о наличие низкого уровня на  выходе OUT. Наличие цифрового вывода OUT и светодиода уровня позволяет использовать модуль автономно, без подключения к контроллеру.

Технические характеристики

  • Напряжение питания: 4-6 В;
  • Выход: цифровой;
  • Максимальное расстояние обнаружения –5 м;
  • Размер модуля: 32×17×15 мм;
  • Общий вес: 12.5 г.
Схема с датчиком

Использование датчика

Рассмотрим использование датчика звука для управления лампой с помощью хлопков. При регистрации хлопка, датчик звука выдает на микроконтроллер сигнал низкого уровня. По получении сигнала микроконтроллер через реле переключает состояние лампы (включает/выключает). Для проекта нам понадобятся следующие детали:

  • плата Arduino Uno;
  • датчик уровня звука;
  • блок реле;
  • настольная лампа;
  • соединительные провода.


Программный код // Подключаем необходимые библиотеки

  1. include <OneWire.h>
  2. include <DallasTemperature.h>

// Шину данных подключаем к выводу №2 Arduino

  1. define ONE_WIRE_BUS 2

// Создаём экземпляр класса для нашей шины и ссылку на него OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire);

// ФУНКЦИЯ ПРЕДУСТАНОВОК void setup(void) {

 Serial.begin(9600); // Инициализация серийного порта
 sensors.begin(); // Инициализация шины

}

// ОСНОВНОЙ ЦИКЛ void loop(void) { Serial.print("Reading Temperature..."); // Подаём команду на чтение sensors.requestTemperatures(); Serial.println("Read"); Serial.print("Sensor Temperature 1: "); // Отображаем значение температуры Serial.print(sensors.getTempCByIndex(0)); }