Найти в Дзене

Сигнализация для дома

Работает через интернет и GSM (звонки, СМС). Планирую продолжать разработку, расширять функционал.

Сигнализация собрана на Arduino Nano. К ней подключен GSM-модем SIM800L и маршрутизатор Mikrotik c прошивкой OpenWRT

Исходники в архиве на Yandex и Git.

Управлять можно через интернет-браузер, звонками, СМС, кнопкой.

Оповещения о внештатных ситуациях тоже всеми способами - через браузер, звонком, СМС, с помощью сирены.

Два режима охраны:

1. "Максимальная защита" - активны все зоны датчиков движения.

2. "Я дома" - Из 4-х охранных линий, две работают по внешнему периметру охраняемого объекта и две для мониторинга присутствия. Если в течении запрограммированного времени по мониторингу нет движения, активируются датчики внешнего периметра. При обнаружении присутствия датчиками внутренней зоны, датчики внешнего периметра отключаются. Если рассматривать частный дом, то две охранных линии будут во дворе, на выходе из помещения. Они будут работать в режиме мониторинга присутствия, и две линии по периметру. Получается если вы дома и не контролируете периметр - охрана работает. Это удобно. Даже если забыл поставить под охрану, система автоматически активирует датчики движения по периметру объекта.

Противопожарные и температурные датчики постоянно в активном состоянии, независимо от состояния охранных функций.

Оповещения при следующих событиях: движение на объекте; при включении-отключении внешнего питания (контроль 220В); при отключении, возобновлении интернета (СМС оповещение); при заряде АКБ < 20%; если температура внешнего или внутреннего датчика > 65 С; при депозите на Sim-карте менее 10 рублей. Состояние депозита проверяется при включении устройства, далее каждые 24 часа.

Более подробная инструкция по всем функциям будет следующей статье.

Начнем.

Для начала необходимо сменить ОС на маршрутизаторе. О достоинствах и недостатках OpenWRT в интернете много информации. Основной плюс - это свободный Линукс со всеми плюшками.

Все действия по установке, настройке произведены из ОС Arch Linux, но подойдет любая операционная система, включая любую из семейства Windows.

Важно! Для возможности восстановления оригинальной прошивки RouterOS необходимо сохранить лицензионный ключ. Подключитесь к маршрутизатору и в SystemLicense нажмите Export Key . Сохраните ключ на компьютере.

Установка OpenWRT на Mikrotik rb951ui-2hnd

Скачать прошивку с Yandex или офф. сайта.

Сам процесс установки я описывать не буду, это тема отдельной статьи.

Если ОС Windows вот статья:

Инструкция прошивка Mikrotik в OpenWRT | Global Hotspot

Для пользователей Linux эта статья https://www.radiusdesk.com/docuwiki/user_guide/mikrotik/openwrt_rb750gr3 или кратко - распаковать скачанный архив, перейти в распакованную папку и отредактировать файл loader.sh:

USER=ваше имя пользователя
IFNAME=имя интерфейса //например eth0

В терминале запустить файл loader.sh

sudo ./loader.sh

Подключить компьютер к первому порту роутера

Отключить питание роутера

Зажать и удерживать кнопку Reset

Подключить электропитание и через 20 секунд отпустить кнопку Reset

Через 2-3 минуты переключить кабель во второй порт

Войти в настройки по адресу http://192.168.1.1/

Перейти в System -> Backup/Flash Firmware

Найти "Flash new firmware image"-> "Flash image..." и нажать на кнопку "Выберите файл (Browse)"

-2

Выбрать файл, имя которого заканчивается на "-sysupgrade.bin"

Затем кнопку "Proceed". Начнется загрузка прошивки в роутер.

Ждем.

После перезагрузки, войти в настройки роутера по адресу http://192.168.1.1/

Имя пользователя: root
Пароль оставить пустым

С прошивкой закончили. Теперь настройки и установка пакета.

Первое что необходимо сделать - это настроить интернет и установить пароль к роутеру. Если вы прошили роутер, то вы сможете настроить это самостоятельно))

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

-3

https://kirill-zak.ru/2018/08/29/408

https://openwrtblog.blogspot.com/2015/03/openwrt-usb-usb.html

Если при подключении по ssh ошибка "no matching host key type found. Their offer: ssh-rsa", то редактируем или создаем файл:

nano /home/$(whoami)/.ssh/config

добавить две строки:

Host 192.168.1.1
HostKeyAlgorithms=+ssh-rsa

Важно! При редактировании /etc/config/fstab из предыдущих статей точка монтирования раздела для файлов должна быть - /mnt/usb

-4

На этот раздел будут сохраняться данные с температурных датчиков.

После подключения и настройки USB накопителя установить пакет webuart_0.0.1_mips_24kc.ipk из архива. Для этого войти в настройки роутера и перейти в System -> Software. Сначала обновим список пакетов("Update lists...") , затем установка "Upload package..." ->

-5

Установить Web сервер

opkg update
opkg install lighttpd lighttpd-mod-cgi lighttpd-mod-access lighttpd-mod-redirect lighttpd-mod-auth lighttpd-mod-authn_file
opkg install php7-mod-sqlite3 php7-mod-pdo php7-mod-gd php7-mod-session zoneinfo-core zoneinfo-europe php7-mod-json
/etc/init.d/lighttpd enable

Обновить настройки с помощью файла backup_config.tar.gz из архива. Перейти в System -> Backup/Flash Firmware. Найти Restore -> кнопка "Upload archive..."

-6

После обновления настроек перезагрузить маршрутизатор.

На компьютере необходимо настроить сеть так, чтобы сетевой адаптер получал IP-адрес автоматически.

После перезагрузки интерфейс для настроек доступен по http://192.168.88.1:81/.

На web-интерфейс сигнализации тоже можно зайти, но пока не запущен микроконтроллер будет бесконечная загрузка страницы с надписью "Подождите". Ссылка для входа http://192.168.88.1/

Логин: admin Пароль: admin123

-7

Данные для входа можно изменить в /etc/lighttpd/lighttpd-plain.user

Следующий этап - это сборка и прошивка Arduino. Но скетчей не будет. Исходники на Си. Заливал программу в микроконтроллер через USBASP. Но об этом в следующей статье.