Kazalo:
- Zaloge
- 1. korak: Zaloge
- 2. korak: Povežite Ardunio in module, kot je prikazano na sliki
- 3. korak: Arduino IDE dodajte potrebne knjižnice
- 4. korak: Nato moramo dobiti kode za vaše senzorje
- 5. korak: Predloga kode Arduino
- 6. korak: Kode, ki ste jih dobili v 5. koraku, prilepite v skico Arduino predloge
- Korak 7: Naložite spremenjeni.ino v svoj Arduino in ga preizkusite
- 8. korak: Nastavitev časa na modulu RTC ter spreminjanje časa ročne in razorožitve
- 9. korak: Dodatne opombe
Video: Arduino brezžični alarmni sistem z obstoječimi senzorji: 9 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Ta projekt je mogoče zgraditi v približno pol ure po ceni približno 20,00 USD, če imate obstoječe brezžične alarmne senzorje 433Mhz ali 315Mhz.
Lahko je tudi popoln nov projekt z brezžičnimi alarmnimi senzorji, kot so infrardeči detektorji gibanja in trstična stikala, ki so preprosto in poceni na voljo na spletu. Samo poiščite 433Mhz ali 315Mhz senzorje, ki uporabljajo kodiranje PT2262 ali EV1527.
Prepričan sem, da je veliko ljudi, kot sem jaz, ki so kupili alarmni sistem GSM/2G z brezžičnimi senzorji in so bili z njim zadovoljni, ko pa sem izklopil omrežje 2G/GSM tam, kjer živim, mi je ostal alarmni sistem, ki bi ga lahko ne programira več ali celo nastavi časa. Nekega dne, ko sem se spraševal, kaj bi lahko naredil, da bi alarm znova deloval, se mi je zgodilo, da preverim, ali lahko Arduino sprejema signale iz senzorjev. Naletel sem na instuctable https://www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/ in po nekaj poskusih ugotovil, da lahko sprejemam signale iz svojih obstoječih senzorjev. Začel sem postopek izgradnje alarmnega sistema, ki bi lahko nadomestil moj obstoječi alarm in bi zagotovil tudi večjo funkcionalnost. Eden od problemov s starim alarmom ni bil nikoli natančno vedeti, kateri od 25 senzorjev je ugasnil. Z dodajanjem LCD zaslona v novo zgradbo alarma na LCD -prikazovalniku zdaj dobim besedilo, ki natančno navaja, kateri senzor je bil aktiviran. Novi alarm lahko še vedno ročno aktivirajo moji obstoječi brezžični ključniki in ima uro v realnem času, ki mu omogoča samodejno aktiviranje in razorožitev ob prednastavljenih urah dneva.
Zaloge
Glejte dodatne opombe na koncu, da zagotovite, da uporabljate pravilno različico teh delov.
Arduino Uno ali podobno
433 ali 315 MHz sprejemniški modul za Arduino
Modul ure realnega časa DS3231 za Arduino
I2C 16x2 LDC modul za Arduino
Brezžična alarmna trstična stikala, senzorji gibanja in daljinski ključavnice po želji
Piezo zvonec
LED in 220 ohmski upor
Ogledna plošča (neobvezno, vendar priporočljivo)
Primerno napajanje za Arduino
Mostične žice itd
Računalnik z nameščenim Arduino IDE
Osnovno znanje o Arduinu
1. korak: Zaloge
Nekaj zgornjih slik zalog, ki jih potrebujete za ta projekt
2. korak: Povežite Ardunio in module, kot je prikazano na sliki
Piezo med zatičem 5 Arduina in zemljo
LED med zatičem 8 Arduina in 220ohmskim uporom nato na ozemljitev
Sprejemnik 433 ali 315 Mhz, VCC do 5V, GND v maso in eden od 2 podatkovnih zatičev na pin2 Arduina
I2C 16X2 LCD modul VCC do 5V, GND na maso, SCL SDA nožice na SCL SDA Arduina (pin A5 je SCL, pin A4 je SDA)
DS3231 RTC modul VCC do 5V, GND na maso, SCL SDA nožice na SCL SDA Arduina (drugi sklop se nahaja nad zatiči GND in AREF večine Arduino)
Vem, da nekateri od vas ne bodo potrebovali več informacij kot ta in spodnja skica, vendar se bom podrobneje posvetil vsem, ki bi želeli malo dodatne pomoči.
3. korak: Arduino IDE dodajte potrebne knjižnice
Arduino Sketch za zagon alarma uporablja nekatere knjižnice, ki privzeto še niso nameščene v Arduino IDE.
Če želite knjižnico RCSwitch dodati v IDE Arduino. Odprite Arduino IDE v zgornjem meniju izberite "Skica", nato v spustnem meniju izberite "Vključi knjižnico" in v naslednjem spustnem meniju izberite "Upravljanje knjižnic". Nato v polje "Filtriraj iskanje" vnesite "RCSW", nato kliknite namestitev za "rc-switch by sui77"
Podrobna navodila za dodajanje knjižnic na
Medtem ko smo pri tem, moramo dodati tudi knjižnice, imenovane Time, TimeAlarms, DS1307RTC in LiquidCrystal_I2C, enak postopek kot zgoraj, vendar iskanje imena vsake nove knjižnice in namestitev. Če niste prepričani, katere knjižnice uporabiti, si oglejte posnetke zaslona zgoraj.
Ura za realni čas DS3231 je združljiva in uporablja knjižnico DS1307RTC.
4. korak: Nato moramo dobiti kode za vaše senzorje
Spodaj sem predložil predlogo kode Arduino, vendar boste morali poiskati vrednosti za vsak vaš senzor in jih prilepiti v kodo.
Na obeh spletnih mestih je veliko informacij o tem, kako pridobiti te kode;
www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/
github.com/sui77/rc-switch/wiki
Vendar je tukaj moja skrajšana različica;
Če želite pridobiti kode, ki jih pošiljajo vaši senzorji in daljinski ključi, priključite Arduino, kot je sestavljen v 1. koraku, na računalnik prek kabla USB in odprite Arduino IDE. Nato v Arduino IDE pojdite na spustni meni »Datoteka«, nato pojdite na »Primeri«, se pomaknite navzdol po seznamu vzorčnih skic, dokler ne najdete »RCSWITCH«, nato izberite skico »ReceiveDemo_Advanced« in jo naložite v Arduino. Ko se skica uspešno naloži, odprite serijski monitor Arduino IDE, ki je še vedno priključen na vaš računalnik prek USB -ja. Sedaj sprožite prvega senzorja, za katerega želite dobiti kodo, se bo izhod RCSwitch prikazal v oknu serijskega monitorja. Za ta projekt iščemo decimalne kode, označene na posnetku zaslona 2. Senzor boste morali večkrat sprožiti, da poiščete decimalno vrednost, ki se najpogosteje pojavi, včasih se bodo vmešale različne vrednosti z resnično vrednostjo, kar je posledica z motnjami naključnih radijskih valov ali drugih naprav, ki delujejo na isti frekvenci.
Upoštevajte decimalno kodo senzorja za uporabo v naslednjem koraku. Ponovite za vse senzorje in daljinske ključavnice, ki jih želite uporabiti v projektu, pri tem pa spremljajte, katera koda gre s katerim senzorjem. Če uporabljate ključavnice za aktiviranje in razorožitev alarma, morate upoštevati različne kode za gumb za roko in gumb za razorožitev vsakega daljinskega upravljalnika.
5. korak: Predloga kode Arduino
Spodaj je kopija moje kode Arduino kot datoteke.ino z imenom Wireless_Alarm. Lahko ga kliknete in odpre se v Arduino IDE. Nisem programer, moja koda je delno sestavljena iz primerov v Arduino IDE, verjetno ni posebej elegantna, vendar deluje in je bila dolgo časa zanesljiva.
Ne pozabite shraniti skice, potem ko vnesete spremembe in vključite kode iz lastnih senzorjev.
6. korak: Kode, ki ste jih dobili v 5. koraku, prilepite v skico Arduino predloge
Zdaj koraki za prilagoditev kode za senzorje in daljinske ključavnice, ki jih uporabljate.
Če v IDE -ju odprete skico Wireless_Alarm, boste v vrstici 111 videli.
if (mySwitch.getReceivedValue () == 115166236) // Koda gumba za roko
Kjer se v obstoječi kodi piše 115166236, morate to številko zamenjati z decimalno kodo za gumb za roko na vašem daljinskem obesku za ključe, ki ste ga posneli v 5. koraku.
Na primer, če ste v koraku 5 dobili decimalno številko 1154321, bi spremenili vrstico 111 tako, da se zdaj bere;
if (mySwitch.getReceivedValue () == 1154321) // Koda gumba Fob arm
Sledite enakemu postopku za vrstico 125.
if (mySwitch.getReceivedValue () == 115166234) // Koda gumba za razorožitev Fob
Kodo gumba za razorožitev daljinskega upravljalnika, ki ste jo posneli v 5. koraku, nadomestite s 115166234.
Če želite za aktiviranje in razorožitev uporabiti več oddaljenih krmilnikov, kopirajte in prilepite vrstice od 111 do 136 tolikokrat, kot je potrebno, nato spremenite vrednosti tako, da ustrezajo drugim daljinskim ključavnicam, najbolje pa, da začnete z enim daljinskim upravljalnikom, dokler niste prepričani, da ste spremenili skica deluje.
Zdaj pa kodiranje alarmnih senzorjev v skici v vrstici 140
if (ledState == HIGH && mySwitch.getReceivedValue () == 1151640) // Dejanje za pisarniško omaro pošiljatelja signala
Vzemite 1151640 in vnesite decimalno vrednost enega od alarmnih senzorjev.
Nato na vrstici 158.
lcd.print (F ("Pisarniška omara")); // natisnite sporočilo na lcd, da ugotovite, kateri senzor je bil aktiviran (in pojdite in poiščite vlomilca:)
Pisarniško omaro spremenite v tisto, kar želite prikazati na LCD -zaslonu tega senzorja. Na primer, če želite, da se glasi kuhinjsko ohišje, naj bo vrstica videti takole;
lcd.print (F ("kuhinjska omara")); // natisnite sporočilo na lcd, da ugotovite, kateri senzor je bil aktiviran (in pojdite in poiščite vlomilca:)
Imena ne smejo presegati 16 znakov.
Med vrsticami 165 in 187 je predloga za kopiranje in lepljenje tolikokrat, kolikor je potrebno, v vrstice neposredno pod 187. Številko za mySwitch.getReceivedValue () == zamenjajte z decimalko enega od drugih senzorjev, ki ste ga posneli v 5. koraku in spremenite ime znotraj "" v lcd.print (F ("senzor tukaj")); imenu, ki ga želite dati senzorju.
Če za aktiviranje in razorožitev alarma ne uporabljate daljinskih ključavnic, lahko preprosto prezrete vrstice 111-136 ali postavite // na začetek vsake neželene vrstice in Arduino jih ne bo prebral.
Po spremembah ne pozabite shraniti datoteke.
Korak 7: Naložite spremenjeni.ino v svoj Arduino in ga preizkusite
Ko je Arduino še vedno povezan z računalnikom prek USB -ja, naložite skico na ploščo Arduino. Ko je nalaganje uspešno zaključeno, se na LCD -prikazovalniku izpiše "Alarm On Disarmed". Pritisnite gumb za roko na daljinskem upravljalniku in na LCD -prikazovalniku se bo izpisalo "Alarm On Armed" in LED naj sveti, da vas obvesti, da je aktiviran, zdaj sprožite senzor, medtem ko je aktiviran, LCD mora prebrati Alarm, ki mu sledi časovni žig in na mestu, kjer je senzor, mora pisk zvoniti 2 minuti, razen če pritisnete gumb za izklop. Če tega rezultata ne dobite, znova preverite kode, ki ste jih dobili v 5. koraku, in spremembe, ki ste jih naredili v prejšnjem koraku, ponovno preverite tudi ožičenje vseh komponent. Če LCD sploh ne bere, je na zadnji strani modula LCD nastavitev kontrasta. Ko je kontrast pravilno nastavljen, če LCD še vedno ne bere, poskusite spremeniti naslov LCD iz 0x3f v 0x27 v vrstici 12 na skici. Odpravljanje težav z LCD -zaslonom tukaj I2C LCD vadnica
8. korak: Nastavitev časa na modulu RTC ter spreminjanje časa ročne in razorožitve
Upajmo, da je bil vaš RTC že nastavljen s pravilnim časom, če pa ne odprete IDE, izberite "Datoteka" in na spustnem seznamu kliknite "Primeri", se pomaknite navzdol do "DS1307RTC" in izberite skico "SetTime", prenesite skico v Arduino in nastavil bo uro v realnem času s časom iz vašega računalnika. Nato boste morali skico Wireless_Alarm znova naložiti v svoj Arduino.
Wireless_Alarm.ino, ki sem ga dal, bo privzeto nastavil alarm, da se samodejno aktivira vsako noč ob 22.15 in se vsako jutro izklopi ob 6.00. Če želite spremeniti te čase, spremenite skico v vrsticah 71 in 72. Čas je v oklepaju za Alarm.alarmRepeat v obliki HH, MM, SS. spremenite to na čas, ki vam ustreza.
Alarm.alarmRepeat (6, 00, 0, MorningAlarm); // RAZKRITITEV čas
Alarm.alarmRepeat (22, 15, 0, EveningAlarm); // ARM čas
Torej, če želite čas razorožitve spremeniti na 9.15 in čas aktiviranja na 17.30, bi bila koda videti tako
Alarm.alarmRepeat (9, 15, 0, MorningAlarm); // RAZKRITITEV čas
Alarm.alarmRepeat (17, 30, 0, EveningAlarm); // ARM čas
Če ne želite, da se alarm samodejno aktivira in razoroži, // postavite pred 2 vrstici in se ne bosta uporabljali.
//Alarm.alarmRepeat(6, 00, 0, MorningAlarm); // RAZKRITITEV čas
//Alarm.alarmRepeat(22, 15, 0, EveningAlarm); // Ročni čas
Čas, ko se oglasi alarmni pisk, lahko spremenite s spreminjanjem vrstice 22
dolg interval const = 120000; // za milis zakasnitev za čas zvonjenja alarma
Interval je v milisekundah, zato 120000 = 120 sekund, če spremenite 120000 na 30000, se alarm oglasi 30 sekund.
Elektromagnet za zagon sirene, strobofona, piska z veliko glasnostjo itd. Je mogoče priključiti tudi na pin 7 ali pin 9 in bo deloval v "intervalu", kot je določeno zgoraj. Upoštevajte, da največja obremenitev za Arduino pin ne sme presegati 40 mA.
9. korak: Dodatne opombe
Pri izbiri sprejemniškega modula 433 ali 315 MHz za Arduino morate izbrati frekvenco, ki ustreza alarmnim senzorjem, ki jih nameravate uporabljati. Predlagam, da za najboljšo zmogljivost kupite modul, ki je opremljen z majhnimi spiralnimi spiralnimi antenami, poleg tega pa 17,3 mm dolge ravne žične antene povečajo tudi zmogljivost.
Pri 16x2 LCD modulu morate za uporabo navodil in kode, ki sem jih navedel tukaj, uporabiti 4 -polni I2C LCD, lahko bi bil izdelan s 16 -polnim standardnim LCD -jem, vendar tukaj ne bo deloval z ožičenjem ali kodo.
Brezžična alarmna trstična stikala, senzorji gibanja in daljinski ključi morajo biti 433 MHz ali 315 MHz, da se ujemajo s sprejemnikom, ki ga nameravate uporabljati, in naj uporabljajo kodiranje PT2262 ali EV1527.
Alarm je razširljiv in prilagodljiv, že sem dodal kartico SD za snemanje ob sprožitvi senzorjev, spremenil LCD, da sveti le, ko pritisnem gumb, in dodal 100 dB sireno, vendar tukaj nisem vključil podrobnosti, da bi članek ostal kot čim krajši in preprostejši. Upam, da bo delitev dela, ki sem ga opravil v zvezi s tem alarmom, koristil drugim.
Z veseljem odgovorim na vsa vprašanja.
Hvala.
Priporočena:
Brezžični brezžični polnilnik Bluetooth: 5 korakov
Brezžični brezžični polnilnik Bluetooth: Ali imate star zvočnik Bluetooth in brezžični polnilnik? Združimo jih, da naredimo čudovit brezžični polnilnik Bluetooth
Raspberry Pi, Android, IoT in brezžični brezžični dron: 7 korakov (s slikami)
Raspberry Pi, Android, IoT in Bluetooth brezžični upravljalnik: Ta kompaktni, mobilni računalnik bo z uporabo Raspberry Pi za vgrajeno logiko ustvaril lokalna vrata, ki pretočno predvajajo video v realnem času, hkrati pa ustvarijo vtičnice Bluetooth za branje vrednosti pošlje aplikacija za Android po meri. Aplikacija se sinhronizira s t
Brezžični brezžični brezžični podaljšek USB, ki deluje na baterijo: 7 korakov (s slikami)
Brezžični brezžični Wi -Fi podaljševalnik z baterijo USB: kako neprijetno ni, če bivate v hotelu in je WiFi le slab. S podaljševalnikom WiFi lahko izboljšate pogoje, vendar tisti, ki sem jih videl, zahtevajo vtičnico, ki ni vedno na voljo. Odločil sem se, da bom obnovil nizko ceno
Brezžični mikrofon DIY za brezžični kitarski sistem: 4 koraki
Brezžični mikrofon DIY za brezžični kitarski sistem: gledal sem nekaj videov in nekaj skupin in skoraj vsi uporabljajo brezžični sistem na kitari. Norel sem, se premikam, hodim in delam kar hočem brez vrvice, zato sanjam, da bi jo imel .. Ampak … zame je zdaj predrago, zato sem prišel do tega
Pretvorite brezžični usmerjevalnik v brezžični podaljšek 2x dostopno točko: 5 korakov
Pretvorite brezžični usmerjevalnik v brezžični podaljšek 2x dostopno točko: V hiši sem imel slabo povezavo z brezžičnim internetom zaradi RSJ (kovinski nosilec v stropu) in sem želel povečati signal ali dodati dodaten podaljšek za preostanek hiše. V elektro sem videl podaljševalce za okoli 50 funtov