Orodha ya maudhui:

Mfumo wa Alarmino Wireless Alarm Kutumia Sensorer Zilizopo: Hatua 9 (na Picha)
Mfumo wa Alarmino Wireless Alarm Kutumia Sensorer Zilizopo: Hatua 9 (na Picha)

Video: Mfumo wa Alarmino Wireless Alarm Kutumia Sensorer Zilizopo: Hatua 9 (na Picha)

Video: Mfumo wa Alarmino Wireless Alarm Kutumia Sensorer Zilizopo: Hatua 9 (na Picha)
Video: Вклад Франции в освоение космоса и его влияние на наше видение планеты 2024, Julai
Anonim
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo
Arduino Wireless Alarm System Kutumia Sensorer Zilizopo

Mradi huu unaweza kujengwa kwa karibu nusu saa kwa gharama ya karibu $ 20.00 ikiwa una sensorer za kengele zisizo na waya za 433Mhz au 315Mhz.

Inaweza pia kuwa mradi mpya kamili na sensorer za kengele zisizo na waya, kama vile vifaa vya kugundua mwendo wa infrared na swichi za mwanzi, zinazopatikana kwa urahisi na kwa bei rahisi mtandaoni. Tafuta tu sensorer za 433Mhz au 315Mhz zinazotumia PT2262 au EV1527 coding.

Nina hakika kuna watu wengi kama mimi ambao wamenunua mfumo wa kengele wa GSM / 2G na sensorer zisizo na waya na walifurahi nayo, hata hivyo wakati mtandao wa 2G / GSM ulizimwa mahali ninapoishi, nilibaki na mfumo wa kengele ningeweza hakuna mpango tena au hata kuweka wakati juu yake. Siku moja wakati nikijiuliza ni nini ningeweza kufanya ili kengele yangu ifanye kazi tena, ilitokea kwangu kuangalia ikiwa Arduino anaweza kupokea ishara kutoka kwa sensorer. Nilijikwaa https://www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/ na baada ya majaribio kadhaa kuamua kwamba ningeweza kupokea ishara kutoka kwa sensorer zangu zilizopo. Nilianza mchakato wa kujenga mfumo wa kengele ambao unaweza kuchukua nafasi ya kengele yangu iliyopo na pia itatoa utendaji ulioongezeka. Moja ya maswala na kengele ya zamani haikuwa ikijua haswa ni ipi kati ya sensorer 25 zilizokwenda, kwa kuongeza skrini ya LCD kwenye kengele yangu mpya na sasa napata maandishi kwenye LCD inayoonyesha ni sensor ipi iliyoamilishwa. Kengele mpya bado inaweza kuwa na silaha ya mikono na vitufe vyangu vya waya visivyo na waya na ina saa halisi ya kuiruhusu iweke mkono na kutia silaha moja kwa moja nyakati zilizowekwa tayari za siku.

Vifaa

Angalia maelezo ya ziada mwishoni ili kuhakikisha unatumia toleo sahihi la sehemu hizi.

Arduino Uno au sawa

Moduli ya mpokeaji ya 433 au 315 MHz ya Arduino

Moduli ya saa halisi ya DS3231 ya Arduino

Moduli ya I2C 16x2 LDC ya Arduino

Swali za mwamba zisizo na waya, sensorer za mwendo na fobs za ufunguo wa mbali kama inavyotakiwa

Buzzer ya piezo

Upinzani wa LED & 220 ohm

Bodi ya mkate (hiari lakini inapendekezwa)

Ugavi unaofaa wa Arduino

Waya za jumper nk

PC na Arduino IDE imewekwa

Ujuzi wa kimsingi wa Arduino

Hatua ya 1: Vifaa

Vifaa
Vifaa
Vifaa
Vifaa
Vifaa
Vifaa

Picha zingine hapo juu za vifaa ambavyo utahitaji kwa mradi huu

Hatua ya 2: Funga waya kwa Ardunio na Moduli kama inavyoonyeshwa kwenye Picha

Waya juu ya Ardunio na Moduli kama inavyoonyeshwa kwenye Picha
Waya juu ya Ardunio na Moduli kama inavyoonyeshwa kwenye Picha

Piezo kati ya pini 5 ya Arduino na ardhi

LED kati ya pini 8 ya Arduino na kwa kontena ya 220ohm kisha duniani

Mpokeaji wa 433 au 315 Mhz, VCC hadi 5V, GND chini na ama moja ya pini 2 za data kwa pin2 ya Arduino

Moduli ya I2C 16X2 LCD VCC hadi 5V, GND chini, pini za SCL SDA kwa SCL SDA ya Arduino (pini A5 ni SCL, pini A4 ni SDA)

Moduli ya DS3231 RTC VCC hadi 5V, GND chini, pini za SCL SDA kwa SCL SDA ya Arduino (kuna seti ya 2 iko juu ya pini za GND na AREF za Arduino nyingi)

Najua wengine hamtahitaji habari zaidi ya hii na mchoro ulioambatanishwa hapa chini lakini nitaingia kwa undani zaidi kwa mtu yeyote ambaye angependa msaada zaidi.

Hatua ya 3: Ongeza Maktaba Muhimu kwa IDE ya Arduino

Ongeza Maktaba Muhimu kwa IDE ya Arduino
Ongeza Maktaba Muhimu kwa IDE ya Arduino
Ongeza Maktaba Muhimu kwa IDE ya Arduino
Ongeza Maktaba Muhimu kwa IDE ya Arduino
Ongeza Maktaba Muhimu kwa IDE ya Arduino
Ongeza Maktaba Muhimu kwa IDE ya Arduino

Mchoro wa Arduino kuendesha kengele hutumia maktaba kadhaa ambazo hazijasakinishwa kwenye IDE ya Arduino kwa msingi.

Ili kuongeza maktaba ya RCSwitch kwenye IDE ya Arduino. Fungua IDE ya Arduino kwenye menyu ya juu chagua "Mchoro" kisha kutoka chini angalia chagua "Jumuisha maktaba" na kutoka chini chini chagua "Dhibiti maktaba". Halafu kwenye "Chuja utaftaji wako" sanduku la "RCSW", bonyeza bonyeza kwenye "rc-switch na sui77"

Maagizo ya kina juu ya kuongeza maktaba kwenye

Wakati tuko kwenye hiyo tunahitaji pia kuongeza maktaba zinazoitwa Time, TimeAlarms, DS1307RTC na LiquidCrystal_I2C, utaratibu sawa na hapo juu lakini unatafuta jina la kila maktaba mpya na usakinishaji. Tazama picha za skrini hapo juu ikiwa haujui ni maktaba gani ya kutumia.

Saa halisi ya DS3231 inaendana na na hutumia maktaba ya DS1307RTC.

Hatua ya 4: Ifuatayo Tunahitaji Kupata Nambari za Sensorer Zako

Ifuatayo Tunahitaji Kupata Nambari za Sensorer Zako
Ifuatayo Tunahitaji Kupata Nambari za Sensorer Zako
Ifuatayo Tunahitaji Kupata Nambari za Sensorer Zako
Ifuatayo Tunahitaji Kupata Nambari za Sensorer Zako

Nimetoa kiolezo cha nambari ya Arduino hapa chini lakini utahitaji kupata maadili ya kila sensorer yako na uibandike kwenye nambari hiyo.

Kuna habari pana juu ya jinsi ya kupata nambari hizi kwenye tovuti hizi mbili;

www.instructables.com/id/Decoding-and-sending-433MHz-RF-codes-with-Arduino-/

github.com/sui77/rc-switch/wiki

Walakini hapa ni toleo langu lililofupishwa;

Ili kupata nambari za sensorer na fobs za ufunguo wa mbali zinatuma, ambatanisha Arduino iliyokusanywa katika hatua ya 1 kwa PC kupitia kebo ya USB na ufungue Arduino IDE. Kisha katika IDE ya Arduino nenda kwenye "Faili" chini, kisha nenda kwenye "Mifano" tembeza chini orodha ya michoro ya mfano hadi utapata "RCSWITCH" kisha uchague mchoro wa "ReceiveDemo_Advanced" na uipakie kwenye Arduino. Mara tu mchoro unapopakia kwa mafanikio kufungua mfuatiliaji wa serial wa IDE ya Arduino nayo ikiwa bado imeambatanishwa na PC yako kupitia USB. Sasa chagua sensorer ya kwanza unayotaka kupata nambari, pato kutoka kwa RCSwitch itaonekana kwenye dirisha la ufuatiliaji wa serial. Kwa mradi huu tunatafuta nambari za desimali kama ilivyoonyeshwa kwenye skrini ya 2. Utahitaji kuchochea sensorer mara kadhaa kutafuta nambari ya desimali ambayo inaonekana mara nyingi, wakati mwingine kutakuwa na maadili tofauti yaliyochanganywa na thamani ya kweli, hii inasababishwa kwa kuingiliwa na mawimbi ya redio ya nasibu au vifaa vingine vinavyofanya kazi kwa masafa sawa.

Kumbuka nambari ya desimali ya sensa kwa matumizi katika hatua inayofuata. Rudia sensorer zote na vitufe vya mbali unayotaka kutumia katika mradi huo, ukifuatilia ni nambari ipi inakwenda na sensor ipi. Ikiwa unatumia vitufe vya mkono kushika na kupokonya silaha kengele utahitaji kumbuka nambari tofauti za kitufe cha mkono na kitufe cha kupokonya silaha ya kila rimoti.

Hatua ya 5: Kiolezo cha Nambari ya Arduino

Chini ni nakala ya nambari yangu ya Arduino kama faili ya.ino inayoitwa Wireless_Alarm. Unaweza kubofya juu yake na inapaswa kufungua Ardeino IDE. Mimi sio programu msimbo wangu umekusanywa kwa sehemu kutoka kwa mifano inayopatikana katika IDE ya Arduino, labda sio ya kifahari lakini inafanya kazi na imekuwa ya kuaminika kwa muda mrefu.

Kumbuka kuhifadhi tena mchoro baada ya kufanya mabadiliko kujumuisha nambari kutoka kwa sensorer zako mwenyewe.

Hatua ya 6: Bandika Nambari Zilizopatikana Katika Hatua ya 5 Kwenye Mchoro wa Kiolezo cha Arduino

Sasa hatua za kubadilisha msimbo kwa sensorer na vitufe vya mbali unayotumia.

Ukifungua mchoro wa Wireless_Alarm kwenye IDE yako utaona kwenye laini ya 111.

ikiwa (mySwitch.getReceivedValue () == 115166236) // Msimbo wa kitufe cha mkono wa Fob

Ambapo katika nambari iliyopo inasoma 115166236 unahitaji kubadilisha nambari hiyo na nambari ya desimali kwa kitufe cha mkono cha kitufe chako cha mbali ambacho ulirekodi kwenye Hatua ya 5.

Kwa mfano ikiwa katika hatua ya 5 unapata decimal 1154321 ungerekebisha laini ya 111 hadi sasa kusoma;

ikiwa (mySwitch.getReceivedValue () == 1154321) // Msimbo wa kifungo cha mkono wa Fob

Fuata utaratibu huo wa laini ya 125.

ikiwa (mySwitch.getReceivedValue () == 115166234) // Fob silaha ya kifungo cha silaha

Badala ya 115166234 kwa nambari ya kifungo chako cha mbali cha ufunguo wa silaha ambacho ulirekodi kwenye Hatua ya 5.

Ikiwa unataka kutumia fobs nyingi za mbali kushika silaha na silaha, nakili na ubandike laini 111 hadi 136 mara nyingi inavyotakiwa kisha ubadilishe maadili ili kukidhi vitufe vyako vingine vya mbali, lakini bora tu kuanza na rimoti moja mpaka uwe na uhakika umebadilisha mchoro unafanya kazi.

Sasa kuweka alama kwa sensorer za kengele kwenye mchoro kwenye mstari wa 140

ikiwa (ledState == HIGH && mySwitch.getReceivedValue () == 1151640) // Hatua ya kabati la ofisi ya mtumaji ishara

Chukua 1151640 na ingiza thamani ya desimali ya moja ya sensorer yako ya kengele.

Halafu kwenye laini ya 158.

lcd.print (F ("Kabati la Ofisi")); // ujumbe wa kuchapisha kwa lcd kujua ni sensor ipi iliyoamilishwa (na nenda ukapata mwizi:)

Badilisha kabati la Ofisi kwa kile ungependa kuonyeshwa kwenye LCD kwa kihisi hicho. Kwa mfano ikiwa unataka isome kitchendoor fanya laini ionekane kama hii;

lcd.print (F ("Kitchendoor")); // ujumbe wa kuchapisha kwa lcd kujua ni sensor ipi iliyoamilishwa (na nenda ukapata mwizi:)

Majina hayapaswi kuzidi herufi 16.

Kati ya laini ya 165 na 187 kuna templeti ya kunakili na kubandika mara nyingi kama inavyotakiwa kwenye mistari moja kwa moja chini ya 187. Badilisha namba baada ya mySwitch.getReceivedValue () == na desimali ya moja ya sensorer zako zingine ambazo ulirekodi katika hatua ya 5 na ubadilishe jina ndani ya "" katika lcd.print (F ("sensornamehere")); kwa jina unalotaka kutoa sensa yako.

Ikiwa hutumii vitufe vikuu vya mbali kushika silaha na kutia silaha kengele yako unaweza kupuuza tu mistari 111-136 au kuweka // mwanzoni mwa kila moja ya mistari isiyohitajika na Arduino haitaisoma.

Kumbuka kuhifadhi faili baada ya kufanya mabadiliko yako.

Hatua ya 7: Pakia.ino Iliyorekebishwa kwa Arduino yako na Jaribio

Pakia.ino Iliyorekebishwa kwa Arduino yako na Jaribio
Pakia.ino Iliyorekebishwa kwa Arduino yako na Jaribio
Pakia.ino Iliyorekebishwa kwa Arduino yako na Jaribio
Pakia.ino Iliyorekebishwa kwa Arduino yako na Jaribio
Pakia.ino Iliyorekebishwa kwa Arduino yako na Jaribio
Pakia.ino Iliyorekebishwa kwa Arduino yako na Jaribio

Na Arduino bado imeunganishwa kwenye PC yako na USB pakia mchoro kwenye Bodi ya Arduino. Mara baada ya upakiaji kukamilika kwa ufanisi LCD inapaswa kusoma "Alarm On Disarmed". Bonyeza kitufe cha mkono kwenye rimoti yako na LCD inapaswa kusoma "Alarm On Armed" na LED inapaswa kuwashwa ili kukujulisha kuwa ina silaha, sasa chochea sensorer ikiwa na silaha, LCD inapaswa kusoma Alarm ifuate na stempu ya muda na eneo la sensorer, beeper inapaswa kulia kwa dakika 2 isipokuwa unapobonyeza kitufe cha kupokonya silaha. Ikiwa hautapata matokeo haya angalia nambari ulizopata katika Hatua ya 5 na mabadiliko uliyofanya kwa nambari katika hatua ya awali, angalia tena wiring ya vifaa vyote. Ikiwa LCD haisomi kabisa, kuna marekebisho tofauti nyuma ya moduli ya LCD. Mara utofautishaji umewekwa kwa usahihi ikiwa LCD bado haijasoma jaribu kubadilisha Anwani ya LCD kutoka 0x3f hadi 0x27 kwenye mstari wa 12 kwenye mchoro. Utatuzi wa LCD hapa mafunzo ya I2C LCD

Hatua ya 8: Kuweka Wakati kwenye Moduli ya RTC na Kubadilisha Nyakati na Nyakati za Silaha

Tunatumahi kuwa RTC yako ilikuwa tayari imewekwa na wakati sahihi lakini ikiwa haifungue IDE, chagua 'Faili' na kutoka kwa bonyeza chini kwenye "Mifano", nenda chini hadi "DS1307RTC" na uchague mchoro wa "SetTime", pakua mchoro wako Arduino na itaweka saa halisi wakati na wakati kutoka kwa PC yako. Ila utahitaji kupakia tena mchoro wa Wireless_Alarm kwa Arduino yako.

Wireless_Alarm.ino ambayo nimetoa kwa hiari itaweka kengele kwa silaha moja kwa moja saa 10.15 jioni kila usiku na kupokonya silaha saa 6.00 asubuhi kila asubuhi. Ili kubadilisha nyakati hizi, rekebisha Mchoro kwenye mistari ya 71 na 72. Wakati uko kwenye mabano baada ya Alarm.alarmRudia katika muundo HH, MM, SS. badilisha hii iwe wakati wowote unaofaa kwako.

Alarm.alarm Rudia (6, 00, 0, Alarm ya Asubuhi); // Wakati wa KUVUNJIKA

Alarm. Kengele Rudia (22, 15, 0, Alarm ya jioni); // Wakati wa ARM

Kwa hivyo kubadilisha wakati wa kupokonya silaha kuwa 9.15 asubuhi na saa ya mkono hadi 5.30 jioni nambari ingeonekana kama hii

Alarm. Kengele Rudia (9, 15, 0, Alarm ya Asubuhi); // Wakati wa KUVUNJIKA

Alarm. Kengele Rudia (17, 30, 0, Alarm ya jioni); // Wakati wa ARM

Ikiwa hautaki kengele iweke mkono na upoteze silaha moja kwa moja weka // mbele ya mistari 2 na haitatumika.

// Kengele Kurudia (6, 00, 0, Alarm ya Asubuhi); // Wakati wa KUVUNJIKA

// Kengele Kurudia (22, 15, 0, Alarm ya jioni); // Wakati wa mkono

Wakati mlio wa kengele anavyolia unaweza kubadilishwa kwa kubadilisha laini ya 22

muda mrefu wa const = 120000; // kwa kuchelewa kwa millis kwa urefu wa sauti za kengele

Muda upo katika milliseconds kwa hivyo 120000 = sekunde 120, kubadilisha 120000 hadi 30000 kungefanya kengele iwe ya sauti kwa sekunde 30.

Solenoid ya kuendesha siren, strobe light, beeper ya sauti kubwa nk inaweza pia kuwa na waya kushinikiza 7 au kubandika 9 na itaendeshwa kwa "muda" uliowekwa hapo juu. Kumbuka mzigo wa juu kwa pini ya Arduino haipaswi kuzidi 40mA.

Hatua ya 9: Vidokezo vya Ziada

Wakati wa kuchagua moduli ya mpokeaji ya 433 au 315 MHz ya Arduino unapaswa kuchukua masafa ili kufanana na sensorer za kengele unazotarajia kutumia. Ninashauri kununua moduli inayokuja na antena ndogo za ond kwa utendaji bora, vinginevyo antena ndefu sawa na waya 17.3mm pia huongeza utendaji.

Ukiwa na moduli ya 16x2 LCD lazima utumie 4 pin I2C LCD kutumia maagizo na nambari ninayotoa hapa, inaweza kutengenezwa na LCD 16 ya kiwango lakini haitafanya kazi na wiring au nambari hapa.

Swichi za mwanzi zisizo na waya, sensorer za mwendo na fobs za ufunguo wa mbali zinapaswa kuwa 433Mhz au 315Mhz ili zilingane na mpokeaji unayedhamiria kutumia na inapaswa kutumia usimbuaji wa PT2262 au EV1527.

Kengele ni ya kupanuka na inayoweza kubadilika, tayari nimeongeza kadi ya SD kurekodi wakati sensorer zinasababishwa, nimebadilisha LCD kuwashwa tu wakati kifungo kinashikiliwa na kuongezwa siren ya 100dB, lakini sijajumuisha maelezo hapa kuweka nakala kama fupi na rahisi iwezekanavyo. Natumai kushiriki kazi ambayo nimefanya kwenye kengele hii ni ya matumizi kwa wengine.

Heri kujibu maswali yoyote.

Asante.

Ilipendekeza: