Сигнализатор и противопожарная тревога

Для защиты дома от пожара используются три датчика дыма Артон СПД3.2(НЗ), которые располагаются в трёх разных комнатах. Это оптические датчики, которые имеют питания 12В и с помощью реле размыкают изначально замкнутые контакты. 

 

В качестве двух блоков питания используются миниатюрные Hi-Link AC DC на 5В и 12В. Для охлаждения контроллера будет включаться мини винтилятор-улитка MX-3010. Для оповещения к выводу AlertSiren подключена небольшая сирена, а в качестве голосового оповещателя используется модуль MP3-плеера и 5Вт динамик на 8Ом. С помощью САПР FreeCAD для контроллера и других элементов был разработан корпус, который затем распечатан на 3D-принтере. 

  

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

Вот список полученных режимов для проекта сигнализации:

Первый режим "Система" в нём будут определены общие для всех других режимов алгоритмы поведения. Это система охлаждения контроллера и аварийные уведомления:

 

А вот для режима "Пожар", мы зададим работу и сирены, и голоса и другие уведомления, которые будут нам сообщать о происшествиях удаленно через Telegram. Мы будем знать, что включился режим "Пожар", а также какой из постов сработал. Голосовую тревогу, на свякий случай, мы будем перезапускать каждые пять минут.

  

Теперь нужно определить порядок работы и смысл режимов "Отключить", "Ожидание", "Запуск" и "Пожар". Режим "Отключить", необходим для того, чтобы после сработки сигнализации её можно было полностью отключить для перезапуска, а именно выключить сирену и обесточить датчики дыма (после сработки, они остаются в аварийном режиме до снятия с них питания). Также в целях безопасности, мы будем проигрывать сообщение, что сигнализация отключена, что является небезопасным режимом.

   

Следующий режим "Запуск" необходим потому, что в начале надо подать питания на датчики дыма и подождать некоторое время (1-2мин), пока их показания выйдут на нулевой уровень. Для облегчения понимания работы с системой звуковой файл будет информировать пользователя, сколько времени прошло и можно ли устанавливать следующий режим "Ожидание".

  

Теперь, главный дежурный режим "Ожидание", в нём будет находиться сигнализация большую часть времени до момента срабатывания. В нем, нам надо только выключить предыдущее голосовое уведомление из режима "Запуска", которое записано таким образом, что будет всегда проигрываться циклично, чтобы обязательно перевести систему в режим ожидания.


Нам остается добавить еще три голосовых уведомления для режимов "Приём пищи", "На прогулку" и "Будильник":

  

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

Теперь настроим каждую привязку отдельно. Начнем с привязки "Пожар". Во-первых, добавим ограничения чтобы она режим не включался, когда установлены особые режимы "Отключить" или "Запуск". Во-вторых, добавим список условий, у которых выход показателей за рамки должен будет приводить к срабатыванию сигнализации. Мы использовали посты как для дома, так и для гаража, а также температуру для других контроллеров.

Привязки "Будильник" и "Пора поесть" будут иметь только одно ограничение на случай, если установлен режим "Пожар", который мы считаем более приоритетным.


Привязка "Гулять" также имеет одно ограничение на случай, если установлен режим "Пожар", но кроме этого, добавлено условие, согласно которому, отслеживается показатель "Освещенность" для другого проекта "Свет" (управляет автоматической подсветкой). Как только показатель находиться в интервале от 50 до 100 люкс, то включится режим "Гулять".

Проект "Сигнализация"  С чего начать проект?