Привязываем датчик движения HC-SR501 к Majordomo

Average Rating
0 out of 5 stars. 0 votes.

Я уже писал про говорящие датчики дыма, а в этой статье я хотел бы описать похожую реализацию, но уже с датчиком движения. На алиекспрес я купил датчик SR501 HC-SR501 вот тут всего за $2.22. Это самая дешёвая цена, которую я смог найти на момент покупки. Так же для реализации своего проекта говорящего датчика движения вам необходимо купить микроконтроллер Arduino Nano, купил я его вот тут за $2.80. Что удобно, продавец за эту цену прилагает и USB кабель для подключения к компьютеру для заливки прошивки и питания одновременно. И Ethernet шилд для передачи данных с самого датчика в сеть. Я его купил вот тут за $3.84. Итого выходит $8.86. Вы скажите, что зачем мне городить весь этот конструктор если я могу купить за теже $10 датчик движения Xiaomi. Я купил и собрал оба варианта и вот вам моя сравнительная характеристка плюсов и минусов.

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

Плюсы:
– работоспособность не зависит от китайского сервера
– нет жёсткой привязки по софту к экосистеме от Xiaomi
– не требует дополнительный шлюз (+$28) и полностью автономен
– данные передаются не по воздуху, а по кабелю
– возможность разобрать комплектующие и применять в других проектах
– возможность переписывать прошивку под новые проекты
– прокачка в сборке умных вещей и создание прошивок :)

Минусы:
– стоимость соизмерима с готовым коммерческим решением
– нет красивого дизайна и коробки
– занимает больше места
– сложность в сборке для новичка

Датчик от Xiaomi
датчик движения Xiaomi

Плюсы:
– красивый дизайн
– соизмеримая стоимость с кастомной реализацией
– возможность быстро добавить в сценарии экосистемы Xiaomi
– лёгкость в настройке и подключение

Минусы:
– работа зависит от китайского сервера
– для работы необходим шлюз (+$28)
– если не заставили работать плагин Majordomo то датчик можно использовать исключительно в экосистеме Xiaomi (как у меня :)

Если несмотря на все трудности вы всё таки решили собрать свой датчик, то читаем дальше.
Как подключать сами провода к микроконтроллеру я описывать не буду, в сети множество статей и видео на эту тему. Я же просто предложу использовать мою версию прошивки. Как она работает? Когда датчик зафиксирует движение, то значение 1 будет передано по протоколу MQTT в брокер. В своём примере я использую бесплатный сервис cloudmqtt.com, но вам настоятельно рекомендую использовать свой сервер. Например Mosquitto. В скетче, вот в этой строке

if (client.connect("Client", "login", "password"))

вам нужно будет указать свой логин и пароль к брокеру. В Majordomo у вас должен быть установлен модуль MQTT.

Его так же нужно настроить на ваш брокер указав все настройки. После этого в Majordomo будет приходит значение 1 всякий раз когда ваш датчик зафиксирует движение. В настройках модуля MQTT Majordomo, нужно приязать значение в какому-нибуть свойству, после чего вы сможете использовать его в своих сценариях. Либо вы можете сразу указать что бысрабатывал метод, как только значение измениться. А в самом методе написатьчто-то в роде:

if(gg("Kitchen.HCSR501")=='1'){
say("Зафиксировано движение",2);}
sg("Kitchen.HCSR501","0");

где Kitchen.HCSR501 имя свойства указанное в модуле MQTT куда приходит значение с датчика.
Вот и всё, если у вас возникли какие-нибуть вопросы, то задавайте в коментариях,я постараюсь ответить. Так же рекомендую посмотреть видео, ссылку на которое я оставил в самом начале поста. В нём я детально показываю всё тоже самое, но с датчиками дыма.

Average Rating
0 out of 5 stars. 0 votes.

3 thoughts on “Привязываем датчик движения HC-SR501 к Majordomo”

  1. Для большой части функций Xiaomi Gate НЕ нужно китайское облако. Достаточно включить режим разработчика.

    1. ну вот например для устройства IR Mi Remote 360 не существует режима разработчика. И таких устройств очень много у Xiaomi. Сейчас пытаюсь разобраться как давать команды устройству без официального мобильного приложения и облака, что бы прикрутить управление к Мажордомо, но пока безрезультатно.

Leave a Reply to Gelezako Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>