 |
Информационно - охранная система
Дача у меня - дом в глухой деревне (всего несколько
домов). Несколько раз посещали местные грабители. Брать нечего, но однажды не
погнушались туалетной бумагой!
После реализации поливной системы, творческая мысль не остановилась.
Решил сделать информационно - охранную систему.
И родилась следующая система:
-
основной блок - PIC16F628 с часовым кварцем + I2C
память 256 Кбит + оптопара (выход до 100ma) + небольшая пьезосирена 105 ДБ + три
батарейки АА + входы от датчиков (двери)
-
блок индикации - небольшой LCD модуль типа от
телефона (SPI интерфейс) + 2 кнопки
Три батарейки АА специально, чтобы автономность
составляла 2-3 года. Блок индикации (потребление 15-20uA) подключается при
необходимости. Датчики герконовые (НО или НЗ). Датчики и провода тщательно
замаскированы (дом бревенчатый, возможностей много).
Сирена интересная - 105ДБ (питание 12В, но потребляет всего 30-40мА и
можно питать от батареек). Звучит противно - просто бьет по ушам. Долго не
выдержишь.
Как видите никаких особенностей в схеме нет. Все остальное реализовано
программно.
Все события (дата + время + код сработавшего датчика) записываются в
память и доступны для просмотра на LCD. Есть возможность устанавливать
длительность включения сирены, дату и время, причем неточность хода часов можно
компенсировать программным способом. Сирена включается только в режиме охраны.
Назначение системы было задумано двойным - помимо охранных функций можно
было узнать когда дети возвращаются с ночных прогулок.
Несколько раз (система работает 3 года) система реально сработала.
Интересно было потом отслеживать сам процесс проникновения: 1-й день (ночь)
вскрыли ворота во внутренний двор - сирена заработала, оборвали несколько
проводов (свет во дворе) и не выдержав ушли через несколько минут; 2-й день
(ночь) проникли вторично - сирена заработала ушли через 1-2 минуты не вскрывая
дом. Сирена - хорошее средство против местных воришек которые боятся, чтобы
какая-нибудь соседка их не увидела и не узнала.
Интересный факт эксплуатации. Однажды (первый заезд сразу после зимы )
забыл снять с охраны и открыл дверь. Система сработала, но не хотела сниматься с
охраны (сирена работала не выключалась). Пришлось вытащить батарейки. Приборов
не было. А дома выяснилось, что одна из 3-х батареек протекла (выдавала не то
что "0", а тестер показывал "-1В"). Пока шли рабочие микроамперы PIC держался, а
когда потребление стало 1,5 мА (тянет оптопара для включения сирены) - завис
(какое напряжение выдавали батарейки не знаю). Сколько PIC держала на таких
батарейках сказать не могу.
Особенностью программы является:
1. Функция энергосбережения. Дело в том, что исходное состояние датчиков
может быть как НЗ так и НО. При включении состояние распознается автоматически.
Естественно есть подтяжка к "+". А теперь представьте себе, что будет если
датчики останутся "сработавшими" 5-10 месяцев. Батареек не хватит. Алгоритм
энергосбережения прост: с определенной дискретностью (например 1 сек) нога
настроенная на выход (=0) переводится в состояние "вход", после некоторой
задержки (длина к провода к датчикам до 30м, естественно витая пара) измеряется
состояние и снова возвращается в состояние выхода (=0). Интегральное
энергопотребление центрального блока 20-30uA.
2. Изначально долго возился с определение срабатывания датчиков (с учетом
того, что они могут быть как НО так НЗ). Случайно реализовался очень простой
алгоритм, позволяющий определять срабатывание по переднему фронту, по заднему,
так и по обеим одновременно. Просто и элегантно.
3. Частично пригодился алгоритм работы с кнопками, причем распознается как
короткое, так и длинное нажатие.
|