Përmbajtje:
- Furnizimet
- Hapi 1: Furnizimet
- Hapi 2: Lidhni Ardunio -n dhe Modulet Siç Shfaqen në Imazh
- Hapi 3: Shtoni Bibliotekat e nevojshme në Arduino IDE
- Hapi 4: Tjetra Ne duhet të Marrim Kodet për Sensorët tuaj
- Hapi 5: Modeli i Kodit Arduino
- Hapi 6: Ngjitni Kodet e Përfituar në Hapin 5 Në Skicën Arduino të Template
- Hapi 7: Ngarko.ino -në e ndryshuar në Arduino -n dhe testin tënd
- Hapi 8: Vendosja e kohës në modulin RTC dhe ndryshimi i orëve të armëve dhe çarmatimit
- Hapi 9: Shënime shtesë
Video: Sistemi i alarmit pa tel Arduino duke përdorur sensorë ekzistues: 9 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:16
Ky projekt mund të ndërtohet për rreth gjysmë ore me një kosto prej rreth 20,00 dollarë nëse keni sensorë alarmi ekzistues 433Mhz ose 315Mhz.
Mund të jetë gjithashtu një projekt i ri i plotë me sensorë alarmi pa tel, siç janë detektorët e lëvizjes me rreze infra të kuqe dhe çelsat e kallamishteve, lehtësisht dhe me çmim të ulët të disponueshëm në internet. Thjesht kërkoni për sensorë 433Mhz ose 315Mhz që përdorin kodim PT2262 ose EV1527.
Jam i sigurt se ka shumë njerëz si unë që kanë blerë një sistem alarmi GSM/2G me sensorë pa tel dhe ishin të kënaqur me të, megjithatë kur rrjeti 2G/GSM u fik aty ku jetoj, më la një sistem alarmi që mundem nuk programon më as nuk e cakton kohën në të. Një ditë ndërsa pyesja veten se çfarë mund të bëja për ta bërë alarmin tim përsëri funksional, më shkoi të kontrolloja nëse një Arduino mund të merrte sinjale nga sensorët. Kam hasur në një https://www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/ dhe pas disa eksperimenteve përcaktova se mund të merrja sinjale nga sensorët e mi ekzistues. Fillova procesin për të ndërtuar një sistem alarmi që mund të zëvendësonte alarmin tim ekzistues dhe gjithashtu do të siguronte një rritje të funksionalitetit. Një nga çështjet e alarmit të vjetër nuk ishte të dija saktësisht se cili nga 25 sensorët u fik, duke shtuar një ekran LCD në alarmin tim të ri, tani marr një tekst në LCD që tregon saktësisht se cili sensor është aktivizuar. Alarmi i ri mund të jetë ende i armatosur me dorë nga tastet e mia ekzistuese pa tel dhe ka një orë në kohë reale për ta lejuar atë të armatoset dhe çarmatoset automatikisht në periudha të paracaktuara të ditës.
Furnizimet
Shihni shënimet shtesë në fund për të siguruar që përdorni versionin e saktë të këtyre pjesëve.
Arduino Uno ose të ngjashme
Moduli i marrësit 433 ose 315 MHz për Arduino
Moduli i orës në kohë reale DS3231 për Arduino
Moduli I2C 16x2 LDC për Arduino
Çelësat e kallamit të Alarmit pa tel, sensorë lëvizjeje dhe fobë çelësash të largët sipas dëshirës
Zhurmë piezo
LED & rezistencë 220 ohm
Breadboard (opsionale por e rekomanduar)
Furnizimi me energji i përshtatshëm për Arduino
Telat e kërcyesit etj
PC me Arduino IDE të instaluar
Njohuri themelore të Arduino
Hapi 1: Furnizimet
Disa imazhe më sipër të furnizimeve që do t'ju nevojiten për këtë projekt
Hapi 2: Lidhni Ardunio -n dhe Modulet Siç Shfaqen në Imazh
Piezo midis pin 5 të Arduino dhe tokës
LED midis pinit 8 të Arduino dhe një rezistori 220ohm pastaj në tokë
Marrës 433 ose 315 Mhz, VCC në 5V, GND në tokë dhe një nga 2 kunjat e të dhënave në pin2 të Arduino
Moduli I2C 16X2 LCD VCC në 5V, GND në tokë, kunjat SCL SDA në SCL SDA të Arduino (pin A5 është SCL, pin A4 është SDA)
Moduli DS3231 RTC VCC në 5V, GND në tokë, kunjat SCL SDA në SCL SDA të Arduino (ekziston grupi i dytë i vendosur mbi kunjat GND dhe AREF të shumicës së Arduino -ve)
Unë e di që disa prej jush nuk do të kenë nevojë për më shumë informacion se ky dhe skicën e bashkangjitur më poshtë, por unë do të hyj në më shumë detaje për këdo që do të donte pak ndihmë të mëtejshme.
Hapi 3: Shtoni Bibliotekat e nevojshme në Arduino IDE
Skica Arduino për të aktivizuar alarmin përdor disa biblioteka që nuk janë instaluar tashmë në Arduino IDE si parazgjedhje.
Për të shtuar bibliotekën RCSwitch në Arduino IDE. Hapni Arduino IDE në menunë e sipërme zgjidhni "Sketch" pastaj nga drop -down zgjidhni "Include library" dhe nga drop down tjetër zgjidhni "Manage libraries". Pastaj në kutinë "Filtroni kërkimin tuaj" shkruani "RCSW", klikoni tjetër mbi install për "rc-switch by sui77"
Udhëzime të hollësishme për shtimin e bibliotekave në
Ndërsa jemi në të, ne gjithashtu duhet të shtojmë bibliotekat e quajtura Time, TimeAlarms, DS1307RTC dhe LiquidCrystal_I2C, e njëjta procedurë si më sipër, por kërkimi i emrit të secilës bibliotekë të re dhe instalimi. Shihni pamjet e ekranit më lart nëse nuk jeni të sigurt se cilat biblioteka të përdorni.
Ora DS3231 në kohë reale është e pajtueshme dhe përdor bibliotekën DS1307RTC.
Hapi 4: Tjetra Ne duhet të Marrim Kodet për Sensorët tuaj
Unë kam dhënë modelin e kodit Arduino më poshtë, por do t'ju duhet të gjeni vlerat për secilin nga sensorët tuaj dhe t'i ngjisni ato në kod.
Ka informacion të gjerë se si t'i merrni këto kode në të dyja këto faqe;
www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/
github.com/sui77/rc-switch/wiki
Megjithatë këtu është versioni im i shkurtuar;
Për të marrë kodet që po dërgojnë sensorët tuaj dhe fobet kyç të largët, bashkëngjitni Arduino -n e montuar në hapin 1 në një kompjuter përmes kabllit USB dhe hapni Arduino IDE. Pastaj në Arduino IDE shkoni te drop down "File", pastaj shkoni te "Shembuj" lëvizni poshtë listës së skicave shembullore derisa të gjeni "RCSWITCH" pastaj zgjidhni skicën "ReceiveDemo_Advanced" dhe ngarkojeni atë në Arduino. Pasi skica të ngarkohet me sukses, hapni monitorin serik të Arduino IDE me atë akoma të bashkangjitur në kompjuterin tuaj përmes USB. Tani aktivizoni sensorin e parë për të cilin dëshironi të merrni kodin, dalja nga RCSwitch do të shfaqet në dritaren e monitorit serik. Për këtë projekt ne po kërkojmë kodet dhjetore siç janë theksuar në pamjen e ekranit 2. Ju do të duhet të aktivizoni sensorin shumë herë duke kërkuar vlerën dhjetore që shfaqet më shpesh, ndonjëherë do të ketë vlera të ndryshme të përziera me vlerën e vërtetë, kjo shkaktohet nga ndërhyrja nga valët e rastësishme të radios ose pajisjet e tjera që veprojnë në të njëjtën frekuencë.
Vini re kodin dhjetor të sensorit për përdorim në hapin tjetër. Përsëriteni për të gjithë sensorët dhe tastet e largëta që dëshironi të përdorni në projekt, duke mbajtur shënim se cili kod shkon me cilin sensor. Nëse përdorni tastiera për të armatosur dhe çarmatosur alarmin, do t'ju duhet të vini re kodet e ndryshme për butonin e krahut dhe butonin e çarmatimit të secilit telekomandë.
Hapi 5: Modeli i Kodit Arduino
Më poshtë është një kopje e kodit tim Arduino si një skedar.ino i quajtur Wireless_Alarm. Mund të klikoni mbi të dhe duhet të hapet në Arduino IDE. Unë nuk jam programues kodi im është mbledhur pjesërisht nga shembujt e gjetur në Arduino IDE, ndoshta nuk është veçanërisht elegant, por funksionon dhe ka qenë i besueshëm për një periudhë të gjatë kohore.
Mos harroni të ruani përsëri skicën pasi të bëni ndryshimet për të përfshirë kodet nga sensorët tuaj.
Hapi 6: Ngjitni Kodet e Përfituar në Hapin 5 Në Skicën Arduino të Template
Tani hapat për të personalizuar kodin për sensorët dhe tastet e telekomandës që përdorni.
Nëse hapni skicën Wireless_Alarm në IDE tuaj do të shihni në rreshtin 111.
nëse (mySwitch.getReceivedValue () == 115166236) // Kodi i butonit të krahut të krahut
Aty ku në kodin ekzistues lexon 115166236 ju duhet ta zëvendësoni atë numër me kod dhjetor për butonin e krahut të tastierës suaj të largët të regjistruar në Hapin 5.
Për shembull, nëse në hapin 5 keni një decimal 1154321, ju do të modifikoni rreshtin 111 për ta lexuar tani;
nëse (mySwitch.getReceivedValue () == 1154321) // Kodi i butonit të krahut të krahut
Ndiqni të njëjtën procedurë për rreshtin 125.
nëse (mySwitch.getReceivedValue () == 115166234) // Kodi i butonit të çarmatosjes Fob
Zëvendësoni 115166234 për kodin e butonit tuaj të çarmatimit të tastierës në distancë të regjistruar në Hapin 5.
Nëse dëshironi të përdorni foba të shumtë në distancë për të armatosur dhe çarmatosur, kopjoni dhe ngjitni linjat 111 deri në 136 sa herë që kërkohet, pastaj ndryshoni vlerat për t'iu përshtatur çelësave të tjerë të telekomandës, por më së miri vetëm të filloni me një telekomandë derisa të jeni të sigurt se jeni modifikuar skica po punon.
Tani për të koduar sensorët e alarmit në skicën në rreshtin 140
nëse (ledState == HIGH && mySwitch.getReceivedValue () == 1151640) // Veprim për dollapin e zyrës së dërguesit të sinjalit
Merrni 1151640 dhe futni vlerën dhjetore të njërit prej sensorëve tuaj të alarmit.
Pastaj në rreshtin 158.
lcd.print (F ("dollap zyre")); // printoni mesazhin në LCD për të ditur se cili sensor është aktivizuar (dhe shkoni dhe gjeni hajdutin:)
Ndryshoni dollapin e Zyrës me atë që dëshironi të shfaqet në LCD për atë sensor. Për shembull, nëse doni që ajo të lexojë kitchendoor, bëni që rreshti të duket kështu;
lcd.print (F ("Kitchendoor")); // printoni mesazhin në LCD për të ditur se cili sensor është aktivizuar (dhe shkoni dhe gjeni hajdutin:)
Emrat nuk duhet të kalojnë 16 karaktere.
Midis rreshtit 165 dhe 187 është një model për të kopjuar dhe ngjitur sa herë që kërkohet në rreshtat drejtpërdrejt nën 187. Zëvendësoni numrin pas mySwitch.getReceivedValue () == me dhjetorin e njërit prej sensorëve tuaj të tjerë që keni regjistruar në hapin 5 dhe ndryshoni emrin brenda "" në lcd.print (F ("sensornamehere")); emrit që dëshironi t'i jepni sensorit tuaj.
Nëse nuk përdorni tastiera të largëta për të armatosur dhe çarmatosur alarmin tuaj, thjesht mund të injoroni rreshtat 111-136 ose të vendosni // në fillim të secilës prej rreshtave të padëshiruar dhe Arduino nuk do t'i lexojë ato.
Mos harroni të ruani skedarin pasi të keni bërë ndryshimet tuaja.
Hapi 7: Ngarko.ino -në e ndryshuar në Arduino -n dhe testin tënd
Me Arduino ende të lidhur me kompjuterin tuaj me USB ngarkoni skicën në Bordin Arduino. Pasi ngarkimi të ketë përfunduar me sukses LCD -ja duhet të lexojë "Alarm On Disarmed". Shtypni butonin e krahut në telekomandën tuaj dhe LCD duhet të lexojë "Alarm On Armatur" dhe LED duhet të ndizet për t'ju bërë të ditur se është i armatosur, tani aktivizoni një sensor ndërsa është i armatosur, LCD duhet të lexojë Alarmin e ndjekur nga një vulë kohore dhe vendndodhja e sensorit, sinjali duhet të tingëllojë për 2 minuta nëse nuk e shtypni butonin e çarmatimit. Nëse nuk po e merrni këtë rezultat, kontrolloni sërish kodet që keni marrë në Hapin 5 dhe ndryshimet që keni bërë në kodin në hapin e mëparshëm, gjithashtu kontrolloni instalimet elektrike të të gjithë përbërësve. Nëse LCD nuk po lexon fare, ka një rregullim kontrasti në pjesën e pasme të modulit LCD. Pasi kontrasti të jetë vendosur saktë nëse LCD -ja ende nuk po lexon provoni të ndryshoni Adresën e LCD -së nga 0x3f në 0x27 në rreshtin 12 në skicë. Zgjidhja e problemeve LCD këtu tutoriali I2C LCD
Hapi 8: Vendosja e kohës në modulin RTC dhe ndryshimi i orëve të armëve dhe çarmatimit
Shpresojmë që RTC -ja juaj të jetë vendosur tashmë me kohën e duhur, por nëse nuk e hapni IDE -në, zgjidhni 'File' dhe nga lista zbritëse klikoni në 'Shembuj', lëvizni poshtë në 'DS1307RTC' dhe zgjidhni skicën 'SetTime', shkarkoni skicën tuajin Arduino dhe do të caktojë orën në kohë reale me kohën nga kompjuteri juaj. Pastaj do t'ju duhet të ngarkoni skicën Wireless_Alarm në Arduino tuaj.
Wireless_Alarm.ino që kam siguruar do të vendosë si parazgjedhje alarmin që të armatoset automatikisht në orën 22.15 çdo natë dhe të çarmatoset në 6.00 të mëngjesit çdo mëngjes. Për të ndryshuar këto kohë, modifikoni Skicën në rreshtat 71 dhe 72. Koha është në kllapa pas Alarm.alarmRepeat në formatin HH, MM, SS. ndryshojeni atë në çdo kohë që ju përshtatet.
Alarm.alarmRepeat (6, 00, 0, MorningAlarm); // Koha e ÇARZATIMIT
Alarm.alarmRepeat (22, 15, 0, EveningAlarm); // koha ARM
Pra, për të ndryshuar kohën e çarmatimit në 9.15 të mëngjesit dhe kohën e krahut në 5.30 pasdite kodi do të dukej kështu
Alarm.alarmRepeat (9, 15, 0, MorningAlarm); // Koha e ÇARZATIMIT
Alarm.alarmRepeat (17, 30, 0, EveningAlarm); // koha ARM
Nëse nuk doni që alarmi të armatoset dhe çarmatoset vendosni // para 2 rreshtave dhe ato nuk do të përdoren.
//Alarm.alarmRepe((6, 00, 0, MorningAlarm)); // Koha e ÇARZATIMIT
//Alarm.alarmRepe((22, 15, 0, EveningAlarm)); // Koha e krahut
Koha për të cilën bie sinjali i alarmit mund të ndryshohet duke modifikuar linjën 22
interval i gjatë const = 120000; // për milis vonesa për kohëzgjatjen e tingullit të alarmit
Intervali është në milisekonda kështu që 120000 = 120 sekonda, ndryshimi i 120000 në 30000 do të bënte që alarmi të binte për 30 sekonda.
Një solenoid për të drejtuar një sirenë, një dritë strobe, një sinjal me vëllim të lartë, etj. Mbani në mend ngarkesën maksimale për një kunj Arduino nuk duhet të kalojë 40mA.
Hapi 9: Shënime shtesë
Kur zgjidhni një modul marrës 433 ose 315 MHz për Arduino, duhet të zgjidhni frekuencën që të përputhet me sensorët e alarmit që keni ndërmend të përdorni. Unë sugjeroj që të blini një modul që vjen me një antenë të vogël spirale spirale për performancën më të mirë, përndryshe një antenë me tela të drejtë 17.3mm gjithashtu rrit performancën.
Me modulin LCD 16x2 ju duhet të përdorni një LCD 4 pin I2C për të përdorur udhëzimet dhe kodin që jap këtu, mund të bëhet me një LCD standard 16 pin, por nuk do të funksionojë me telat ose kodin këtu.
Çelësat e kallamit të alarmit pa tel, sensorët e lëvizjes dhe fobët e çelësit të largët duhet të jenë 433Mhz ose 315Mhz që të përputhen me marrësin që keni ndërmend të përdorni dhe duhet të përdorni kodimin PT2262 ose EV1527.
Alarmi është i zgjerueshëm dhe i adaptueshëm, unë tashmë kam shtuar një kartë SD për të regjistruar kur ndizen sensorët, ndryshova LCD -në që të ndizet vetëm kur mbahet një buton dhe shtoj një sirenë 100dB, por nuk kam përfshirë këtu detaje për ta mbajtur artikullin si e shkurtër dhe e thjeshtë sa të jetë e mundur. Shpresoj që ndarja e punës që kam bërë në këtë alarm është e dobishme për të tjerët.
I lumtur t'i përgjigjet çdo pyetjeje.
Faleminderit.
Recommended:
Sistemi i alarmit të parkimit të automjeteve duke përdorur sensorin PIR- DIY: 7 hapa (me fotografi)
Sistemi i alarmit të parkimit të automjeteve duke përdorur sensorin PIR- DIY: A keni hasur ndonjëherë në telashe kur parkoni për automjete si makinë, kamion, biçikletë ose ndonjë tjetër, atëherë në këtë udhëzues do t'ju tregoj se si ta kapërceni këtë problem duke përdorur një alarm të thjeshtë parkimi të automjetit sistem duke përdorur sensorin PIR. Në këtë sistem kur
Sistemi i alarmit të zjarrit duke përdorur Arduino [Në disa hapa të thjeshtë]: 3 hapa
Sistemi i alarmit të zjarrit duke përdorur Arduino [Në disa hapa të thjeshtë]: A po kërkoni të bëni një projekt të thjeshtë dhe interesant me Arduino i cili në të njëjtën kohë mund të jetë vërtet i dobishëm dhe potencialisht shpëtues i jetës? Nëse po, keni ardhur në vendin e duhur për të mësuar diçka të re dhe novatore. Në këtë postim po shkojmë
Telekomanda me valë duke përdorur modulin NRF24L01 2.4Ghz me Arduino - Nrf24l01 Marrës transmetues 4 kanal / 6 kanal për kuadopter - Rc Helikopter - Rc Plane Duke përdorur Arduino: 5 hapa (me fotografi)
Telekomanda me valë duke përdorur modulin NRF24L01 2.4Ghz me Arduino | Nrf24l01 Marrës transmetues 4 kanal / 6 kanal për kuadopter | Rc Helikopter | Rc Plane Duke përdorur Arduino: Për të drejtuar një makinë RC | Kuadikopter | Dron | RC aeroplan | Varka RC, ne gjithmonë kemi nevojë për një marrës dhe transmetues, supozoni për RC QUADCOPTER kemi nevojë për një transmetues dhe marrës me 6 kanale dhe ai lloj TX dhe RX është shumë i kushtueshëm, kështu që ne do të bëjmë një në pajisjen tonë
Pool Pi Guy - Sistemi i alarmit i drejtuar nga AI dhe monitorimi i pishinës duke përdorur Raspberry Pi: 12 hapa (me fotografi)
Pool Pi Guy - Sistemi i alarmit i drejtuar nga AI dhe monitorimi i pishinës duke përdorur Raspberry Pi: Të kesh një pishinë në shtëpi është kënaqësi, por vjen me përgjegjësi të madhe. Shqetësimi im më i madh është monitorimi nëse dikush është pranë pishinës pa mbikëqyrje (veçanërisht fëmijët më të vegjël). Bezdisja ime më e madhe është të sigurohem që linja e ujit të pishinës të mos bjerë kurrë nën hyrjen e pompës
Ndihma e kundërt e parkimit në garazh duke përdorur sensorin ekzistues të sigurisë dhe qarkun analog: 5 hapa
Ndihma e kundërt e parkimit në garazh duke përdorur sensorin ekzistues të sigurisë dhe qarkun analog: Unë dyshoj se shumë shpikje në historinë e njerëzimit janë bërë për shkak të grave ankuese. Makina larëse dhe frigoriferi sigurisht që duken si kandidatë të zbatueshëm. Shpikja ime e vogël " " i përshkruar në këtë Udhëzues është një elektronik