Как сделать сигнализацию на Ардуино

Оглавление статьи: Как сделать сигнализацию на Ардуино
Содержание

Одним из методов защиты своего имущества от посягательств сторонних людей, служит установка сигнализации. До развития миниатюрных электронных систем использовались различные электротехнические оповестительные устройства и сенсоры, определяющие состояние окружающей среды на основе реле, ламп или транзисторов и целой кучи соединяющих проводников. Создать подобную конструкцию, — особенно если речь шла о многофункциональном ее варианте — было весьма затруднительно неподготовленному человеку, особенно без соответствующего инженерного образования. Кроме того, не стоит забывать и о конечной цене такой системы. Производство каждого электронного компонента выходило в копеечку, оттого и элементарная база стоила весьма недешево. Опять же, уже собранная сигнализация, за счёт названых потребляющих энергию частей, тратила просто прорву электричества, что ограничивало ее работоспособность при отключении постоянного его поступления, периодически происходящего из-за технических аварий или деструктивных действий злоумышленников.

Сигнализация на Ардуино

Конструктивное исполнение модуля сигнализации нашего времени:

Конструктивное исполнение модуля сигнализации

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

„Мозг” таких систем — миниатюрный компьютер, ориентированный на управление оборудованием или по-другому микроконтроллер. Именно с его помощью все сторонние компоненты работают как единое целое, реагируя какими-либо действиями в зависимости от полученных команд, или посылая информацию об изменениях окружающей среды в логическое устройство.

Микроконтроллер Arduino Pro Mini:

Микроконтроллер Arduino Pro Mini

Наибольшее распространение в последнее время получила линейка микроконтроллеров Arduino, возможности и простой монтаж элементов, которых позволяет их использовать не только в примитивных проектах, мигающих лампочкой или подающих звуковой сигнал, но и сложных комплексах обеспечения безопасности. К примеру, современная сигнализация на Ардуино, способна определять нарушения границ собственности, используя датчики света, движения, звука, пересечения, открытия, вибрации и даже емкостного определения касания. Причем отправка информации о произошедшем событии может выполняться не только за счет проводной связи, но и с использованием GSM коммуникаций.

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

Постановка задачи

Первый этап проекта при возникновении желания создать простую сигналку на Ардуино своими руками — постановка задачи. Речь идет о том, что она должна „уметь” и какими функциями обладать. Именно настоящие действия определят конечную ее стоимость и компоненты, необходимые для получения нужного результата.

Итак, сигнализация должна «уметь»:

  • определять движение какого-либо объекта в наблюдаемом пространстве;
  • контролировать состояние дверей — в разрезе открыты они или закрыты;
  • чувствовать смену освещенности — при любом несанкционированном доступе будет или включен свет, или использован фонарик, что непосредственно укажет управляющему устройству на фактор взлома;
  • отправлять периодические сообщения на сотовый телефон владельца с использованием SMS, о текущем состоянии окружающей среды и контролирующего оборудования;
  • информировать, — посредством тех же коммуникаций — о факте недозволенного доступа в охраняемое помещение;
  • также нужна предусмотренная возможность простой смены настроек самой системы безопасности.

Сигнализация в сборе с питанием от аккумулятора:

Сигнализация в сборе с питанием от аккумулятора

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

Что понадобится

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

Понадобится:

чипы

  1. Сам Arduino Pro Mini. Названая модель выбрана по причине устойчивости по питанию. При подаче на нее 3.3 В, вычислительная часть работает на частоте 8 Mhz, при 5 В — на 16 Mhz.
  2. Сенсор, определяющий движение — MH-SR602 MINI.
  3. Модуль связи посредством сотовых протоколов — SIM800C(L) GSM Module.
  4. Часы реального времени, сделанные в виде дополнения, изначально созданного для использования с микроконтроллером другой фирмы — DS3231 RTC Module For Raspberry Pi. Их функция заключается не только в том, чтобы отсчитывать временные интервалы, но и перезагружать Arduino или GSM модуль в случае их зависания.
  5. Так как Arduino Pro не имеет собственного USB разъема, потребуется конвертер интерфейсов, в роли которого будет выступать CP2102 MICRO USB to UART TTL Module или аналогичный.
  6. Немного компонентов электронных плат, включая несколько конденсаторов, резисторов, транзистор, микрофон, фотодиод и зумер. Их номиналы будут указаны позже, непосредственно под представленной схемой.

Принципиальная схема и макетная плата

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

схема

Выполнить ее можно как на основе макетной платы, так и вытравив при помощи ЛУТ свой вариант. Или же заказать аналогичную на специализированных сайтах или магазинах.

Теперь, что касается элементов россыпью, их характеристики:

Тип Обозначение на плате Характеристики Аналоги
Резистор R6, R8 1M
R2-5, 9-14 4,7k
Биполярный конденсатор C1, 3, 5, 6 0,1 uF
Полярный конденсатор С2 1000 uF 6.3V
С4 33 uF 6.3V
Диод шотки D1-4 MBR0520LT MBR0520-TP, SBR80520LT1G, MBR0530T1G
Диод D5 1N4148W КД522Б, PML4148L, DL4148, LL4148-GS08
Транзистор Q1 IRLML6401 p-типа 12 В FDN302P, Si2305DS, Si2315DS
Фоторезистор R1 300
BZ1 Зумер
SW1 Геркон

Схема открытая, ее kiCAD вариант доступен на Github по адресу https://github.com/AlexIII/gsmGuard/tree/master/kicad-project

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

Окно KiCAD с платой:

Окно KiCAD с платой

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

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

Скетчи и исходные коды

Конечно, для сигнализации на основе Arduino мало изготовить аппаратную часть, нужно еще и прошить микроконтроллер. Выполняется операция программой xLoader, которую можно обнаружить по адресу http://www.hobbytronics.co.uk/arduino-xloader.

Сами прошивки, в зависимости от языка СМС и используемой частоты Arduino Pro mini, а также их исходные коды, можно найти на https://github.com/AlexIII/gsmGuard/releases.

сайт

Взаимосвязь представленных файлов и функциональности:

 

Язык SMS Используемая частота Arduino
8Mhz 16Mhz
Русский gsmGuard-firmware-v1.3-RU-8MHz.hex gsmGuard-firmware-v1.3-RU-16MHz.hex
Английский gsmGuard-firmware-v1.3-EN-8MHz.hex gsmGuard-firmware-v1.3-EN-16MHz.hex

Там же, есть уже скомпилированный файл программы под Windows, с помощью которой задаются начальные настройки устройства. Пользователям Linux доступны ее исходные коды на Python 2.7, которые можно легко запустить командой «$ python2.7 gsmGuardConf.py».

Всё перечисленное «богатство» упаковано в файл https://github.com/AlexIII/gsmGuard/archive/v1.3.tar.gz. Работает ПО только при установленных компонентах Python — Tk, PySerial, MatPlotLi. Также понадобится добавить библиотеку RTCLib, взять которую можно по адресу https://github.com/NeiroNx/RTCLib. Вот пример рабочего окна запущенной программы:

программное обеспечение

Ограничения и функциональность

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

  1. При обнаружении нарушения охранного периметра сработает звуковая сигнализация на 30 секунд, и будет отправлено СМС владельцу следующего содержания:уведомлениеГлавные факторы, влияющие на возникновение названого события — изменение света (фоторезистор), открытие двери (геркон) или определение движения (MH-SR602). Причем сообщения будут меняться в зависимости от конкретной причины.
  2. Дополнительно владелец будет получать SMS, содержащую информацию о резкой смене температуры в помещении или низком уровне заряда аккумулятора.
  3. Раз в сутки, в установленный период, происходит отправка отчета следующего вида с использованием GSM связи:уведомление 2Время его получения устанавливается пользователем в конфигурирующей утилите.
  4. После сборки аппаратной части, нужно произвести первоначальные настройки сигнализации, применив программу, описанную ранее.
  5. При определении контакта по USB, микроконтроллер прерывает работу прошивки, ожидая действий пользователя. Очередь не отправленных SMS сообщений очищается.
  6. Факторы, вызывающие включение тревоги, будут повторно определены не быстрее 20 минут после предыдущей их регистрации.
  7. Если питание сигнализации будет отсутствовать более трех часов, сохраненные изменения температуры сбросятся.
  8. При неудачной отправке SMS, микроконтроллером будут выполнены попытки повторить действие через 5, 10 и 20 минут. Следующая будет сделана дважды через 40 и повторена однократно после 12 часов простоя.
  9. Поступающие звонки по GSM модулю устройством принимаются, через 3 минуты сбрасываются.

Плюсы и минусы самодельной сигнализации на Arduino

Готовый вариант описанной системы:

Готовый вариант описанной системы

Универсальность Arduino, и зачастую не самое лучшее качество неофициально выпускаемых плат микроконтроллера, приводят к некоторым проблемам в их использовании. Кроме того, GSM модуль, по сути сам такой же по структуре, как и управляющий аппарат, не отличается избыточной надежностью. Основная причина, конечно же, заключена в перебоях электропитания, почему и стоит для снабжения энергией сигнализации использовать контроль состояния и отдельные батареи. Известность ресурса последних окажет неоспоримую помощь в процессе эксплуатации системы безопасности.

Еще один метод борьбы с зависанием устройств уже изначально внесен в конструкцию. Речь идет о RTC плате часов, которая перегружает весь комплекс оборудования при отсутствии ответа от него в течение определенного времени.

Еще одной проблемой зачастую становятся неверные показания датчиков при температуре окружающей среды ниже 5 °С. К сожалению, этой неприятности в основном подвержен сам модуль, определяющий нагрев окружающей среды и сенсор движения. Что в настоящем случае может помочь — это подборка качественных комплектующих доверенных производителей и нахождение Arduino, со всеми дополнительными компонентами в тепле.

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

В заключение

Хотелось бы отметить, что настоящий GSM информер безопасности на Arduino, годится не только для охраны квартиры, хозяйственного помещения или каких-либо иных неподвижных объектов. Его прекрасно можно применять и в транспорте, выполнив самодельную автосигнализацию на тех же принципах работы, и используя перечисленные ранее компоненты. Бонусом служит возможность ее расширения, которая позволяет возложить на микроконтроллер дополнительные функции. К примеру, GPS навигатор, который пользуясь возможностями GSM связи, будет информировать владельца о текущем нахождении автомобиля.

Видео по теме

Хорошая реклама

Добавить комментарий Ваш e-mail не будет опубликован. Обязательные поля помечены *