392

Охранная сигнализация или система оповещения на Arduino

Привет ардуинщикам!

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


Для тех, кто хочет хлеба и зрелищ - видеоролик, который полностью копирует содержимое статьи:

Ну а для тех, кто больше любит читать, продолжим.. :)

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


В моей системе необходимо было обеспечить возможность управления сигнализацией удалённо, то есть из дома, поэтому у меня было два пути решения этой проблемы:

1. Организовать беспроводное соединение между двумя Arduino.

2. Либо же обойтись одной Arduino и в гараж вывести лишь длинный провод с датчиками.

(Еще, конечно же, был вариант с GSM-сигнализацией, но из-за близости помещения и отсутствия необходимого модуля эту идею я отмел, как-нибудь в другой раз..)


Я решил идти по второму пути - с проводом и одной Arduino, и вот почему: во-первых расстояние до моего гаража составляет примерно 50 метров, что не так много для ощутимого затухания сигнала в линии и вполне реализуемо по затратам кабеля, а во вторых, из-за неотапливаемости помещения зимой, температура в нем может опускаться до -30-35 градусов, что пагубно скажется на Arduino без дополнительного обогрева. Да и перебои с электричеством у нас частые, поэтому пришлось бы лепить дополнительный аккумулятор, что бы поддерживать обогрев и работоспособность.


В итоге я решил просто проложить витую пару и на ее конце навешать датчики. Ну а аккумулятор для резервного питания добавлю как-нибудь попозже.


В качестве датчика открытия двери я использовал датчик Холла и большой магнит, о принципе работы такой связки я рассказывал в этом видео, когда делал бесконтактный датчик тока. Если в двух словах, то датчик реагирует на подносимый к нему магнит, который расположен на подвижной двери ворот, сам же датчик закреплен на раме. Датчик меняет свои значения в зависимости от интенсивности магнитного поля, то есть расстояния до магнита. Таким образом, можно контролировать положение двери в любой момент времени.


Теперь немного подробнее о получившейся системе, если ее так можно назвать :)


Всю её можно разбить на три части: это та, что стоит дома (пульт управления), та, что стоит в охраняемом помещении (датчик Холла и пр), и та, что связывает эти части (витая пара).


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

Из корпуса выходит витая пара на 8 жил, на обратном конце которой расположены датчик температуры и влажности, датчик Холла и пьезо-пищалка с кнопкой:

Схема подключения всей системы получилась довольно простой и выглядит как-то так:

Датчик температуры и влажности я добавил чтобы не только знать о текущем климате внутри помещения, но и на основании датчика температуры уведомлять о возможном возгорании, т.к. при пожаре температура в помещении очень резко поднимается до больших значений свыше 100 градусов по Цельсию.

Алгоритм работы сигнализации достаточно прост и представить его можно вот такой упрощенной блок-схемой:

Что касается кода, то объяснять его, я думаю, нет особого смысла, так как там все разбито по функциям и хорошо закомментировано. Скажу лишь только что код, конечно же, можно оптимизировать и внести в него изменения на своё усмотрение, он далек от идеала, но протестирован на живом примере и стабильно работает. Так же, если вам лень разбираться в коде и хочется просто собрать все по схеме, я специально оставил в самом верху листинга две переменные: первая отвечает за временную задержку на включение сигнализации после нажатия кнопки (я поставил 3 минуты), а вторая отвечает за включение оповещения об открытии двери, то есть то время, когда вы открыли дверь и еще не выключили сигнализацию - по умолчанию на это дается 30 секунд:

#define DELAY_CLOSE 180000
#define DELAY_OPEN 30000

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


Программный код и схемы вы найдете здесь: Яндекс.Диск


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

Arduino & Pi

1.5K поста20.9K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу

4
Автор поста оценил этот комментарий

Прикольно. Я недавно на кота сигналку делал. Он сволочь спит ночью на кресле моем компьютерном. Так-то не жалко, но его бывает тошнит. Кресло тканевое. Уделал мне короче стульчик мой. Я под стол повесил датчик движения, ардуинку, реле и старый насос от надувного матраца. Очень эффективное средство) Включаю на ночь и когда из дома ухожу.

раскрыть ветку
2
DELETED
Автор поста оценил этот комментарий

Как организована защита от саботажа: обрыва вашей витой пары или ее КЗ?

В вашей блок схеме не нашел

раскрыть ветку
1
Автор поста оценил этот комментарий

1. Делать сигнализацию без watchdog'а это игра в рулетку, а если контроллер зависнет ?

2. Поскольку шлейф длинный, то на него прекрасно будут наводиться всякие атмосферные явления типа молний, а на входах контроллера у Вас нет защиты, а значит при первой хорошей грозе всё перестанет работать. Да и п.1 может от наводки случиться.

раскрыть ветку
1
Автор поста оценил этот комментарий
Схаронил
1
Автор поста оценил этот комментарий
А что кнопки без подтягивающих?)
раскрыть ветку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества