Бюджетна GSM алармена система с мозъци от Arduino. GSM система за домашна сигурност, базирана на Arduino Alarm връзка с Arduino

В последната статия научихме как да използваме GSM модула SIM800L и направихме прост дизайн за дистанционно управление на натоварването, днес ще направим нещо по-интересно, а именно GSM охранителна аларма на модула SIM800L от Aliexpress и Arduino, която може да бъде използва се за защита на апартамент, вила, гараж и други обекти, а при задействане ще ви уведоми с обаждане или SMS съобщение.

Какво ни трябва, за да направим GSM аларма:

  • GSM/GPRS модул SIM800L;
  • Arduino Nano, UNO или друго Arduino;
  • Понижаващ DC-DC преобразувател;
  • Батерия 3.7V;
  • Резистори за 10 k - 7 бр;
  • Захранване.

Как да направите GSM аларма за крадец на модул SIM800L и Arduino, описание на длъжността:

Свързваме модула SIM800L, Arduino, сензори и т.н. според диаграмата по-долу, всичко е сглобено на макет, така че можете да промените нещо по всяко време, да го поставите във всеки подходящ калъф и да извадите проводниците от кутията за сигурност сензори и към PSU. Също така поставяме батерията в кутията, тя е необходима, така че когато електричеството изчезне в къщата, устройството да премине в самостоятелен режим, захранван от батерията. На усилващия преобразувател настройваме изхода на 4,2 волта, при това напрежение GSM SIM модулът работи и батерията се зарежда и това напрежение е достатъчно, за да работи Arduino Nano.

Всички 5 сензора могат да бъдат свързани към веригата, като тръстикови превключватели, влажност, дим, сензори за движение и т.н. които поддържат работа на реле, тъй като тази верига е конфигурирана да задейства аларма за отворена верига на всеки от петте сензора, но при желание скицата може да бъде преобразувана в късо съединение.

При задействане на първия сензор се извършва обаждане до посочения номер, след което повикването се прекратява и се осъществява повикване към втория номер, това се прави, ако първият номер не е наличен в момента. При задействане на останалите 4 сензора за сигурност се изпраща само SMS съобщение, в което е изписан номерът или името на задействаната зона, като това съобщение също ще бъде изпратено до два телефонни номера.

В скицата можете да въведете телефонни номера и да дадете имената си на защитени зони, вместо „Аларма! Зона 1", "Аларма! Зона 2", "Аларма! Zone3”… Можете да напишете името на обекта, където сте поставили конкретен сензор, например „Аларма! Добре, Аларма! Дверж” и други, напишете имената на зоната само на латиница. Също така в скицата е зададено времето за обратно обаждане до собственика, тоест след колко часа да ви информира, че цялата система работи и всичко е наред, по подразбиране е настроено да се обажда обратно на всеки 144 часа.

Това е всичко, направихме проста GSM аларма за взлом на модула SIM800L и Arduino, скицата и схемата могат да бъдат подобрени, например модулът SIM800L поддържа възможността за свързване на високоговорител и микрофон към него, което ще ви позволи да слушате до защитената зона, както и донесете гласа си до високоговорителя.

Изтеглете скица за Arduino.

За да защитите дома си от неканени гости, все повече хора инсталират аларми. Те ви позволяват да предупреждавате за проникване в стаята своевременно. Днес има различни видове аларми, но напоследък популярността на GSM алармите започна да расте, тъй като те ви позволяват да получавате информация за проникване на всяко разстояние от обекта, основното е собственикът да има телефон със себе си на това време и този телефон е онлайн. За съжаление, тези системи все още не са твърде евтини, за да се даде предпочитание изключително на тях. Но в наше време можете сами да направите проста GSM-аларма. И популярната платка Arduino ще помогне в този въпрос.


Този проект представлява охранителна система (аларма) за алармиране на натрапници в къщата. Системата използва GSM технология.



Към микроконтролерната платка на тази система за сигурност е свързан модул за откриване на проникване, който може да се базира например на IR сензор или ултразвуков сензор за близост. При получаване на сигнал от такъв модул към телефона на потребителя се изпраща SMS съобщение за проникването в дома му.


Фигурата по-долу показва блокова схема на системата за сигурност.



Основните елементи на системата са микроконтролерна платка (например Arduino Uno) и SIM900A GSM/GPRS модул. Цялата система може да се захранва от едно захранване 12V/2A.


Изображението по-долу показва електрическата схема на базирана на Arduino GSM система за домашна сигурност.



Работата на системата е много проста и не изисква много обяснения. Когато се подаде захранващо напрежение, системата преминава в режим на готовност. Въпреки това, когато J2 се затвори, автоматично се предава предупредително съобщение до предварително определен мобилен телефонен номер. Всеки сензор за откриване може да бъде свързан към входен конектор J2. Трябва да се отбележи, че ниското ниво на пин 1 на конектора J2 е активно и включва системата за сигурност.


Освен това системата е добавила възможност за осъществяване на повикване чрез натискане на бутона S2. С бутона S3 можете да нулирате това обаждане.


По-долу е кодът за Arduino.


//Свържете щифта Tx към щифта D3 на GPS модула //Свържете щифта Rx към щифта D4 на GPS модула //Свържете сигнала за изпращане на SMS към щифта D7 (активен нисък) //Свържете сигнала за CALL към щифтът D8 (активен ниски) // END сигнал за нулиране на повикване, свързан към щифт D9 (активен ниски) #include NewSoftSerial mySerial(3,4); // конфигуриране на RX и TX изходи за комуникация с GSM модула #define msg_key 7 #define call_key 8 #define end_key 9 Номер на низ ="0000000000"; // Въведете тук 10-цифрен мобилен номер вместо нули void setup() ( Serial.begin(9600); mySerial.begin(9600); pinMode(msg_key,INPUT); pinMode(call_key,INPUT); pinMode(end_key, INPUT ); digitalWrite(msg_key,HIGH); digitalWrite(call_key,HIGH); digitalWrite(end_key,HIGH); ) void loop() ( //изпращане на sms всеки път, когато msg_key се задейства if (digitalRead(msg_key)==LOW) / / Проверете дали бутонът за изпращане на sms е натиснат ( mySerial.println("AT+CMGF=1"); // Задаване на режим като забавяне на текстовия режим(150); mySerial.println("AT+CMGS=\"+00"+ number+ "\""); // Посочете номера на получателя в международен формат, като замените нулево забавяне(150); mySerial.print("Предупреждение! Предупреждение за натрапник!"); // Въведете забавянето на съобщението(150); mySerial. write(( byte)0x1A); // Знак за край на съобщението 0x1A: еквивалентен на Ctrl+z delay(50); mySerial.println(); ) //Направете повикване, когато call_key се задейства, else if (digitalRead(call_key) ==LOW) // Проверете дали клавишът_за_повикване вече е натиснат ( mySerial. println("ATD+91"+number+";"); //Определете дали Номер за извикване while(digitalRead(call_key)==НИСКО); забавяне (50); ) //Прекратете повикването else if (digitalRead(end_key)==LOW) //Проверете дали бутонът за прекратяване вече е натиснат ( mySerial.println("ATH"); while(digitalRead(end_key)==LOW); delay( 50 ;)))

По този начин е доста лесно да създадете GSM аларма на базата на платката Arduino със собствените си ръце. Такава аларма по своята цена, разбира се, ще бъде по-евтина от маркови колеги на пазара днес и ще функционира по почти идентичен начин.

Основни модули- GSM модул SIM800L, Arduino Nano (можете да използвате всеки Uno и др.), понижаваща платка, батерия от мобилен телефон.

Ориз. 1. Разположението на модулите за охранителна аларма на Arduino

Изработване на аларма

Монтираме върху макетната платка през подложките, което ще ви позволи да смените модулите, ако е необходимо. Включване на алармата чрез подаване на 4,2 волта през превключвателя на SIM800L и Arduino Nano.



Когато първият цикъл се задейства, системата първо извиква първия номер, след това прекратява повикването и се обажда обратно на втория номер. Вторият номер се добавя само в случай, че първият внезапно бъде прекъснат и т.н. При задействане на втория, третия, четвъртия и петия цикъл се изпраща SMS с номера на задействаната зона, също до два номера. Схема и скица, които се интересуват от описанието под видеото.
Поставяме цялата електроника в подходящ калъф.



Ако не се нуждаете от 5 контура, свържете щифта Arduino 5V към входовете, от които не се нуждаете. GSM алармена система за 5 контура с батерия, която ще позволи на устройството да продължи да работи автономно няколко дни в случай на прекъсване на тока. Към тях можете да свържете всякакви защитни контактни сензори, релейни контакти и т. н. В резултат на това получаваме просто, евтино компактно охранително устройство за изпращане на SMS и набиране на 2 номера. Може да се използва за защита на летни вили, апартаменти, гаражи и др.

Повече във видеото

Днес ще говорим за това как да използвате Arduinoсъбирам система за сигурност. Нашата "охрана" ще пази една верига и ще управлява един сигнализатор.

За Arduino това не е проблем и, както ще видите от програмния код и диаграмата на устройството, можете лесно да увеличите броя на защитените точки за достъп и броя на устройствата за уведомяване или индикация.
система за сигурностможе да се използва за защита както на големи обекти (сгради и конструкции), така и на малки предмети (ковчежета, сейфове), и дори преносими калъфи и куфари. Въпреки че трябва да бъдете по-внимателни с последното, ако инсталирате охранителна система например на куфар, с който решите да пътувате, и системата за предупреждение работи на някое летище, тогава мисля, че ще проведете сериозен разговор с местната служба за сигурност :-)

Опростеният принцип на работа на устройството е както следва (фиг. 1). След включване на захранването устройството влиза в работен режим и изчаква включване. Включването и дезактивирането се извършват с един бутон. За да увеличите сигурността, по-добре е да поставите този бутон в защитеното помещение (сейф или кутия). Преди да включите режима за сигурност, вратата трябва да бъде леко отворена. Когато включите режима за сигурност (натискане на бутона), електронната схема изчаква, докато затворите вратата на стаята (врата на сейфа, капак на кутията и т.н.).

Всеки тип краен превключвател трябва да бъде инсталиран на вратата (или вратата), повече за това по-късно. При затваряне (или отваряне), крайният прекъсвач ще информира устройството, че защитената верига е затворена и устройството ще премине в режим на охрана. Системата ще ви уведоми за преминаването към режим на охрана с два кратки сигнала (както при автоаларми). В този режим устройството "хваща" отварянето на вратата. След отваряне на вратата системата изчаква няколко секунди (това е конфигурируема стойност, около десет секунди за стаи, една или две за кутия) за дезактивиране, ако това не се случи, сирената се включва. Алгоритъмът и схемата са проектирани по такъв начин, че сирената може да бъде изключена само чрез пълно разглобяване на корпуса и изключване на захранването.

устройство система за сигурностмного просто (фиг. 2). В основата на борда Arduino. Крайните превключватели са свързани като обикновен бутон, чрез издърпващи резистори. Ще се спра на крайните прекъсвачи отделно. Те са нормално затворени и нормално отворени. Можете да включите обикновен бутон като краен превключвател, само ходът на обикновения бутон е много голям, хлабината на вратата обикновено е по-голяма. Следователно е необходимо да се измисли някакъв тласък за бутона и да се пружинира, за да не се счупи бутона с вратата. Е, ако не е твърде мързелив, тогава можете да отидете до магазина и да купите магнитен превключвател (тръстиков превключвател) (фиг. 3), той не се страхува от прах и замърсяване.

Подходящ е и краен прекъсвач за автомобилни аларми (фиг. 4). Трябва да се отбележи, че програмата е написана за тръстиковия превключвател. Когато вратата е затворена, нейният контакт е затворен. Ако използвате превключвател от автомобилна аларма, тогава когато вратата е затворена, тя най-вероятно ще бъде отворена и на съответните места в кода ще трябва да промените 0 на 1 и обратно.

Като сирена предлагам да използвам звуковия сигнализатор PKI-1 IVOLGA от беларуско производство (фиг. 5). Захранващо напрежение 9 - 15 V, работен ток 20 - 30 mA. Това позволява да се използва с батерия. В същото време "издава" 95 - 105 dB.

С такива характеристики от батерията Krona ще звучи няколко десетки минути. Намерих го в интернет за 110 рубли. На същото място тръстиков превключвател с магнит струва около 30 рубли. Превключвателят от автомобилната аларма в авточастите беше закупен за 28 рубли. Транзисторът KT315 може да бъде взет с всяка буква или заменен с всеки модерен силициев транзистор с ниска мощност с подходяща проводимост. Ако силата на звука на един сигнализатор не е достатъчна (кой знае, може би искате да бъдете чути на много километри), можете да свържете няколко сигнализатора успоредно или да вземете по-мощен, само в този случай транзисторът трябва да бъде заменен с по-голям мощен (например познатият транзисторен монтаж ULN2003). Като конектори за свързване на тръстиков превключвател и сирена използвах най-простите конектори за аудио / видео устройства - цената на радиопазара е 5 рубли. за двойка.

Корпусът на устройството може да бъде залепен от пластмаса или шперплат; ако се охранява сериозен обект, тогава е по-добре да го направите метален. Батерии или акумулатори за повишаване на надеждността и безопасността е желателно да се поставят вътре в кутията.

За опростяване на програмния код не са използвани енергоспестяващи елементи, а батериите не са достатъчни за дълго време. Можете да оптимизирате кода или още по-добре да го преработите радикално, като приложите обработка на събития при прекъсвания и режим на заспиване на MK. В този случай захранването от две квадратни батерии, свързани последователно (9 V), трябва да продължи няколко месеца.

Сега кодът

// постоянен
бутон const int = 12; // щифт за бутон
const int gerkon = 3; // щифт за тръстиков превключвател
const int sirena = 2; // щифт за управление на сирената
const int led = 13; // индикаторен щифт
// променливи
int buttonState = 0; // състояние на бутона
intgerkonState=0; // състояние на тръстиковия превключвател
int N = 0; // брояч на бутона за дезактивиране
void setup()(
// управление на сирена и индикатор - изход
pinMode(сирена, ИЗХОД);
pinMode (светодиод, ИЗХОД); // бутон и тръстиков превключвател - входове
pinMode(gerkon, INPUT);
pinMode(бутон, INPUT);
}
void loop()(
digitalWrite(LED, HIGH);
while(buttonState= =0)( // цикъл изчакайте, докато бутонът не бъде натиснат
buttonState = digitalRead(бутон); // за превключване в режим на охрана
}
digitalWrite(LED, LOW);
buttonState=0; // нулиране на стойността на бутона
while(gerkonState= =0)( // цикъл, докато затворим вратата
}
забавяне (500); // :-)
digitalWrite(sirena, HIGH); // Кодът
забавяне (100); // показания
digitalWrite(sirena, LOW); // включвам
забавяне (70); // режим
digitalWrite(sirena, HIGH); // охрана
забавяне (100); // уведомление
digitalWrite(sirena, LOW); // звук
while(gerkonState= =1)( // изчакайте вратата да се отвори
gerkonState = digitalRead(gerkon);
}
за (int i=0; i<= 5; i++){ // 7,5 секунды на нажатие
buttonState = digitalRead(бутон); // таен бутон
if (buttonState = = HIGH) ( // проследяване на нашите собствени - на някой друг
N=N+1;
}
забавяне (1500); // тайна функция :-)))
}
if (N > 0) ( // най-важното
digitalWrite(sirena, LOW); // не включвайте сирената
}
друго(
digitalWrite(sirena, HIGH); // или включете сирената
}
digitalWrite(LED, HIGH); // включване на индикатора N = 0;
buttonState=0;
забавяне(15000); // напомняне за манекени, които харесват
digitalWrite(LED, LOW); // натискане на бутони без забавяне на прекъсването (1000);

Те са специални хардуерни платформи, на базата на които можете да създавате различни електронни устройства, включително и. Устройствата от този тип се характеризират с опростен дизайн и възможност за програмиране на техните алгоритми за работа. Благодарение на това алармената система е създадена с помощта на Arduino GSM , може да бъде максимално приспособен към обекта, който ще защитава.

Какво е Arduino модул?

Arduinos са реализирани като малки платки, които имат собствен микропроцесор и памет. Платката съдържа и набор от функционални контакти, към които могат да се свързват различни електрифицирани устройства, включително сензори, използвани за системи за сигурност.

Процесорът Arduino ви позволява да заредите програма, написана от потребителя сами. Създавайки свой собствен уникален алгоритъм, можете да осигурите оптимални режими на работа на охранителните аларми за различни обекти и за различни условия на използване и решавани задачи.

Трудно ли е да се работи с Arduino?

Модулите на Arduino са много популярни сред много потребители. Това стана възможно благодарение на неговата простота и достъпност.

Програмите за управление на модула са написани с помощта на обикновен C++ и допълнения под формата на прости функции за управление на входно-изходните процеси на контактите на модула. Освен това за програмиране може да се използва и безплатната софтуерна среда Arduino IDE, която работи под Windows, Linux или Mac OS.

С модулите Arduino процедурата за сглобяване на устройства е значително опростена. GSM аларма на Arduino може да се създаде без нужда от поялник - сглобяването става с помощта на макет, джъмпери и проводници.

Как да създадете аларма с Arduino?

Основните изисквания, на които трябва да отговаря една направена сам gsm алармена система, създадена на Arduino, включват:

  • уведомява собственика на обекта за проникване или проникване;
  • поддръжка на външни системи като звукова сирена, сигнални светлини;
  • управление на алармата чрез SMS или обаждане;
  • Автономна работа без външно захранване.

За да създадете аларма, ще ви трябва:

  • Ардуино модул;
  • набор от функционални сензори;
  • или модем;
  • автономен източник на захранване;
  • външни изпълнителни устройства.

Отличителна черта на модулите Arduino е използването на специални разширителни платки. С тяхна помощ към Arduino се свързват всички допълнителни устройства, които са необходими за сглобяване на конфигурацията на охранителната система. Такива платки се монтират върху модула Arduino под формата на "сандвич", а съответните спомагателни устройства са свързани към самите платки.

Как работи?

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

За да се осигури възможност за изпращане на предупредителни сигнали до собственика на къща или апартамент, който се охранява, специален GSM модул е ​​свързан към модула Arduino чрез разширителна платка. Той инсталира SIM карта от един от клетъчните доставчици.

При липса на специален GSM-адаптер, обикновеният мобилен телефон също може да играе своята роля. В допълнение към изпращането на SMS предупреждения за аларми и набиране, наличието на клетъчна връзка ще ви позволи да управлявате дистанционно GSM алармата на Arduino, както и да наблюдавате състоянието на обекта чрез изпращане на специални заявки.

"Забележка!

За комуникация със собственика на обекта освен GSM модули могат да се използват и конвенционални модеми, които осигуряват комуникация чрез интернет.

В този случай, когато сензорът се задейства, сигналът, обработен от процесора, се предава чрез модем до специален портал или сайт. И вече от сайта се извършва автоматично генериране на предупредителен SMS или изпращане по пощата до прикачения имейл.

констатации

Използването на модули Arduino ще позволи на потребителите самостоятелно да проектират GSM аларми, които могат да работят с различни функционални сензори и да управляват външни устройства. Благодарение на възможността за използване на различни сензори, функциите на алармата могат да бъдат значително разширени и да се създаде комплекс, който да следи не само безопасността на обекта, но и неговото състояние. Например, ще бъде възможно да се контролира температурата в съоръжението, да се откриват течове на вода и газ, да се спира захранването им в случай на авария и много други.