Ультразвуковой датчик HC-SR05 на ATtiny13

Для контролера лестничного освещения, потребовался датчик для обнаружения проходящего мимо человека. Из-за небольшого угла срабатывания и возможность регулировать дистанцию до объекта, решил использовать ультразвуковой датчик расстояния (SRF05). Так как датчик "напрямую" информацию о расстоянии не выдает, то для получения и обработки данных от него потребуется МК. В сети можно найти много примеров работы с данным датчиком. Большинство этих примеров построенные на arduino с выводом информации о дистанции на LCD дисплей. Так как для моей задачи, не нужно рассчитывать точное расстояние и выводить данные на дисплей, а достаточно только знать пересек ли объект контролируемую линию или нет, в проекте использовал простой AVR микроконтроллер ATtiny13.

Характеристики :

  • Напряжение питания : 4.5 В - 5.5 В
  • Рабочий ток : 10 - 40 мА
  • Ток покоя : 2 мА
  • I/O высокий уровень : 5 В
  • I/O низкий уровень : 0 В
  • Угол : не более 15 градусов
  • Дальность обнаружения : 2 см-400 см
  • Точность : до 0.3 см
  • Частота : 40кГц

Подключение :

  • VCC - питание
  • TRIG - вход сигнала запуска измерения
  • ECHO - выход
  • OUT - n/a
  • GND - земля

Получения информации от датчика:

  1. Подаем импульс продолжительностью 10 uS, на вход (Trig).
  2. Датчик генерирует 8 импульсов частотой 40 кГц. Импульсы отражаются от препятствия и принимаются обратно датчиком.
  3. На выводе Echo получаем выходной сигнал, длительность которого зависит от расстояния до препятствия.
  4. На стороне МК рассчитываем расстояния (см) по формуле Echo (мкс) / 58 (см)
SRF05

О готовом устройстве:

Схема состоит из самого датчика (HC-SR05), AVR микроконтроллера IC1 (ATtiny13), линейного стабилизатора напряжения на 5В (7805), светодиода LED1 информирующего о срабатывании датчика, кнопки SW1 для установки дистанции и транзистор VT1 (BC847) в качестве ключа.

Схема

Установка дистанции срабатывания датчика производиться кнопкой SW1, если при нажатии и удержании кнопки частота мигания светодиода начинает медленно увеличиваться (начинает часто мигать), это свидетельствует об уменьшении дистанции. При повторном нажатии и удержании, частота мигания светодиода начинает уменьшаться и соответственно расстояния, на котором будет срабатывать датчик, увеличивается. Минимальный порог срабатывания датчика ~5 см, а а максимальное ~ 250 см.

Печатная плата выполнена в двухстороннем варианте с разводкой под SMD компоненты с возможностью установки двух вариантов линейных стабилизаторов на 5В (7805 (SOT-89) и 1117-5.0 (SOT-223)) и двух вариантов кнопок. Так же на плате предусмотрен разъем для прошивки МК

Плата1
Плата2

Фьюзы.

Фьюзы

Файлы.

Ниже можно скачать версию прошивки с автоматической настройкой дистанции. Для установки дистанции достаточно установить напротив датчика объект от которого будет отражаться сигнал и один раз кратковременно нажать на кнопку SW1, в память будет записана текущая дистанция за вычетом ~10 см.

firmware_v0.2

firmware_10sec

SmartHome DIV ATtiny13
(0.0) / 0
Прежде чем оставить комментарий, пожалуйста, ознакомьтесь с правилами комментирования. Оставляя комментарий, вы подтверждаете ваше согласие с данными правилами и осознаете возможную ответственность за их нарушение. Все комментарии премодерируются.
0
Рубрики
Свежие записи