Оглавление:

Самодельная система безопасности с использованием Sensor Fusion: 5 шагов
Самодельная система безопасности с использованием Sensor Fusion: 5 шагов

Видео: Самодельная система безопасности с использованием Sensor Fusion: 5 шагов

Видео: Самодельная система безопасности с использованием Sensor Fusion: 5 шагов
Видео: ТЕХНИКА БЕЗОПАСНОСТИ. Вид Грубейшего Нарушения ТРЕБОВАНИЙ ТБ при работе на СТАНКАХ. 2024, Июль
Anonim
Самодельная система безопасности с использованием Sensor Fusion
Самодельная система безопасности с использованием Sensor Fusion

Идея этого проекта состоит в том, чтобы создать дешевый и простой в изготовлении датчик безопасности, который можно было бы использовать для предупреждения вас, когда кто-то пересек его. Первоначальной целью было создать что-то, что могло бы уведомлять меня, когда кто-то поднимается по лестнице, но я также использую его в качестве датчика безопасности для входной двери. Программное обеспечение, предоставленное в этом руководстве, совместимо с macOS. Для работы с Windows необходимо внести небольшие изменения. Полный исходный код любого из этих скриптов можно найти в этом репозитории GitHub.

Запасы:

  1. Ардуино Нано *
  2. Ультразвуковой датчик HC-SR04
  3. Модуль Bluetooth HC-05
  4. Тактильный переключатель OMRON
  5. Резистор 10 кОм
  6. Комплект проводов макетной платы
  7. Макетная плата
  8. Внешний аккумулятор

* Вместо nano также можно использовать uno или mega.

Шаг 1: Настройка схемы

Настройка схемы
Настройка схемы

Следуйте принципиальной схеме, как показано выше. Когда вы загружаете эскиз Arduino в nano, обязательно отключите провода от контактов RX и TX на nano. Было обнаружено, что загрузка в Arduino может привести к ошибкам, если эти контакты подключены к модулю Bluetooth. Сначала загрузите эскиз, а затем подключите эти контакты к модулю Bluetooth.

Основные компоненты

  1. Arduino Nano - микроконтроллер
  2. HC-SR04 - Ультразвуковой датчик
  3. Модуль HC-05 - модуль Bluetooth
  4. Переключатель OMRON - кнопка, используемая для включения / выключения датчика

Шаг 2: Настройка программного обеспечения: Arduino

Настройка программного обеспечения: Arduino
Настройка программного обеспечения: Arduino
  1. Загрузите серийный номер программного обеспечения в свою библиотеку Arduino
  2. Убедитесь, что вы выбрали порт и плату, которые соответствуют вашему Arduino.
  3. Загрузите предоставленный информационный файл и загрузите эскиз, как только убедитесь, что контакты RX / TX на Arduino отключены от модуля Bluetooth.

Шаг 3. Установка программного обеспечения: Python

Настройка программного обеспечения: Python
Настройка программного обеспечения: Python

Чтобы успешно предупредить вас на своем ноутбуке, вам нужно будет запустить скрипт python. Чтобы получить помощь по загрузке Python и необходимых библиотек, обратитесь к этому полезному руководству от TalalKhalil.

Предоставленный сценарий readValuesV2.py считывает значения, отправленные модулем bluetooth, определяет, означает ли это, что кто-то пересек датчик, и создает предупреждение на вашем ноутбуке. Он также создает и сохраняет папку в этом каталоге со всеми измерениями, которые он считал с момента запуска сценария с отметкой времени.

Делать:

  1. Скачайте Python и все зависимости. (Я использовал установку pip)
  2. Обязательно включите Bluetooth на своем ноутбуке и подключитесь к устройству с именем HC-06. Вы должны найти его в списке других устройств в разделе «Bluetooth» в настройках вашей системы. Код доступа для модуля - «1234».
  3. Переменная с именем distance_wall определяет, когда датчик срабатывает. Поэтому, в зависимости от расположения датчика, не забудьте изменить это значение, которое отображается в cms, для вашей среды.
  4. Подключите контакт RX / TX к модулю Bluetooth и запустите скрипт readValuesV2. Он попросит вас ввести номер записи, чтобы он мог правильно назвать создаваемый файл.

Вполне вероятно, что вам, возможно, придется много отлаживать, поэтому обратитесь к последнему разделу этого руководства для получения дополнительной помощи.

Шаг 4. Вероятные проблемы отладки

Ардуино

1) avrdude: stk500_getsync (): not in sync: resp = 0x0: Это часто происходит при попытке загрузить скетч в Arduino.

  • Убедитесь, что выбраны правильный COM-порт и плата.
  • Если вы в настоящее время используете ATmega328P, попробуйте ATmega328P (старый загрузчик).
  • Убедитесь, что вывод RX / TX на Arduino отключен.

2) Ошибка Busy Comport

Убедитесь, что выбран правильный COM-порт. Поскольку вы пытаетесь загрузить скетч в Arduino, убедитесь, что скрипт python не запущен

Python

1) [Errno 16] Ресурс занят: '/dev/tty. HC-06-DevB': это происходит, когда вы не подключили свой ноутбук к модулю bluetooth.

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

2) ValueError: модуль bluetooth не подключен

Это ошибка, выдаваемая вручную, если соединение последовательного порта с модулем Bluetooth не установлено должным образом

3) Ошибка зависимостей пакетов Python

Я использовал pip install, чтобы загрузить необходимые пакеты для python. Обратитесь к переполнению стека для любых ошибок, которые появляются на этом конце

4) Ошибки из-за ОС

Я ожидаю, что некоторые ошибки появятся, если используется ОС Windows. Некоторые области, которые могут вызвать проблемы, - это регистрация системы записи данных и уведомлений на вашем ноутбуке

5) serial.serialutil. SerialException: устройство сообщает о готовности к чтению, но не возвращает никаких данных

Иногда такое случается при отключении питания. Это произошло со мной, когда я выключил устройство с помощью переключателя

Аппаратное обеспечение

1) Убедитесь, что переключатель правильно расположен между линейным разделителем на макетной плате, чтобы соединения не смешивались.

Шаг 5: демонстрация готового устройства

Демонстрация готового устройства
Демонстрация готового устройства
Демонстрация готового устройства
Демонстрация готового устройства
Демонстрация готового устройства
Демонстрация готового устройства

Не стесняйтесь посмотреть видео, чтобы увидеть устройство в действии, используя встроенную ссылку или эту ссылку YouTube: https://www.youtube.com/embed/Ab1wKr2ORbM. В целом, это то, что я сейчас использую регулярно, и обнаружил, что он не слишком быстро разряжает блок питания и не нагружает мой старый ноутбук с точки зрения вычислительной мощности. Если у вас есть какие-либо проблемы, не стесняйтесь создавать сообщение о проблеме в соответствующем репозитории GitHub для этого проекта!

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