Оглавление:

Датчик удара с динамиком своими руками: 5 шагов (с изображениями)
Датчик удара с динамиком своими руками: 5 шагов (с изображениями)

Видео: Датчик удара с динамиком своими руками: 5 шагов (с изображениями)

Видео: Датчик удара с динамиком своими руками: 5 шагов (с изображениями)
Видео: Сигнализация из Мышки учует движение за километр! 2024, Ноябрь
Anonim
Датчик удара с динамиком своими руками
Датчик удара с динамиком своими руками

Динамик работает, активируя электромагнит, который находится рядом с «обычным» магнитом. Это вызывает вибрацию, в результате чего возникает звук. Итак, если вместо подачи тока на динамик, мы можем производить ток (если он очень слабый), перемещая динамик самостоятельно. Затем этот ток может быть обнаружен и интерпретирован микроконтроллером, таким как Arduino.

Шаг 1. Найдите спикера

Найдите спикера
Найдите спикера
Найдите спикера
Найдите спикера
Найдите спикера
Найдите спикера
Найдите спикера
Найдите спикера

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

  1. Разрежьте перемычку пополам
  2. Снимите концы с него
  3. Припаиваем к динамику (там, наверное, уже были какие-то провода - просто отрежьте их)

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

Шаг 2: Постройте схему

Постройте схему
Постройте схему

Необходимые материалы:

  • Arduino UNO
  • Макетная плата
  • Провода перемычки
  • Светодиод (любого цвета)
  • Два резистора 220 Ом (красно-красно-коричневый)
  • Спикер

Следуйте приведенной выше схеме, чтобы подключить все это к Arduino.

Шаг 3. Загрузите этот код

Загрузите этот код в IDE Arduino. Вам, вероятно, потребуется откалибровать его, поскольку вы не используете тот же динамик, что и я, поэтому я объясню, как это сделать, в несколько шагов.

int shockMin = 996; // вам может потребоваться изменить эти

int shockMax = 1010; // вам может потребоваться изменить эти пустые настройки () {pinMode (11, OUTPUT); // Serial.begin (9600); // раскомментируйте это, чтобы облегчить калибровку} void loop () {int shock = analogRead (A0); int lightval = map (shock, shockMin, shockMax, 0, 255); если (lightval> 0) {analogWrite (11, lightval); } else {analogWrite (11, 0); } // Serial.println (shock); // раскомментируйте это, чтобы помочь с калибровкой}

Шаг 4: как его использовать

Нажмите пальцем на центр динамика, и индикатор должен мигать. Если нет, вам нужно будет откалибровать его на следующем шаге. В противном случае вы можете попробовать прикрепить динамик к чему-нибудь. Может быть, вы могли бы сделать барабан, приклеив его к бумажной тарелке? - Попробуйте использовать карандаши в качестве голеней.

Шаг 5: откалибровать

Если ваш светодиод уже удовлетворительно мигает, вы можете пропустить этот шаг. В противном случае выполните следующие действия:

  1. Удалите "//" в строках "// раскомментируйте это, чтобы помочь с калибровкой".
  2. Загрузите код и откройте серийный монитор
  3. Нажмите на центр динамика и наблюдайте, как меняются значения
  4. Измените переменные shockMin и shockMax на низкие и высокие значения в последовательном мониторе.

int shockMin = 996;

int shockMax = 1010;

Например, если последовательный монитор считывает 700 как состояние вашего датчика без нажатия (когда он просто сидит там), и когда вы нажимаете его, он увеличивается до 860, измените shockMax примерно на 900 (чуть выше показаний датчика) и shockMin примерно на 680. Далее:

  1. Закройте последовательный монитор
  2. Загрузите новый код
  3. Нажмите на центр динамика еще немного

Если все в порядке, светодиод должен включаться только при нажатии на сенсор.

Рекомендуемые: