Orodha ya maudhui:
- Hatua ya 1: Weka Akaunti za Firebase na Twilio
- Hatua ya 2: Sanidi Pis yako
- Hatua ya 3: Hati ya Python ya Pi1
- Hatua ya 4: Hati ya Python ya Pi2
- Hatua ya 5: Jaribu Pis
- Hatua ya 6: Kuunda R-PiAlerts IOS App
- Hatua ya 7: Jaribu App
- Hatua ya 8: Hitimisho
Video: R-PiAlerts: Jenga Mfumo wa Usalama wa WiFi na Raspberry Pis: Hatua 8 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Wakati unafanya kazi kwenye dawati lako, ghafla unasikia kelele za mbali. Je! Kuna mtu alikuja tu nyumbani? Gari langu limeegeshwa mbele ya nyumba yangu, je! Kuna mtu alivunja gari langu? Je! Hutamani upate arifa kwenye simu yako au kwenye dawati lako ili uweze kuamua ikiwa utachunguza au la? Usiulize tena! R-PiAlerts iko hapa!
R-PiAlerts ni mfumo wa usalama wa Raspberry Pi3 uliojengwa karibu na Wingu la Firebase. Ikiwa harakati hugunduliwa, mfumo utamwarifu mtumiaji wa uwezekano wa kuingia na ujumbe wa maandishi na mwangaza wa mwangaza wa LED (kengele ya kuona ya kimya ya aina hiyo). Mara tu mtumiaji anapokea arifa, anaweza kuchunguza. Harakati zote zilizogunduliwa zitaingia kwenye hifadhidata ya Firebase. Mbali na kutazama logi ya harakati kwenye kivinjari cha wavuti, mtumiaji anaweza pia kupata kumbukumbu ya harakati kupitia programu ya iOS. Niliamua kujenga hii kwa sababu ya kuongezeka kwa uvunjaji wa magari na nyumba karibu na eneo langu.
Nilihitaji kitu kidogo ambacho kinaweza kugundua harakati na kukimbia betri ikiwa inahitajika. Kisha, ninaweza kujificha kitengo nyuma ya mlango au kwenye gari. Pia kitengo kinahitaji kuweza kunitumia arifa au arifa. Pi3 inaweza kufanya mambo haya yote na wifi iliyojengwa na uwezo wake wa kukimbia pakiti ya betri ya USB. Sababu zingine juu ya kwanini nilichagua Pi3:
- Pi ni ya bei rahisi
- Ni rahisi kupeleka na kuongeza kiwango
- Inasanidi kutoka kwa mtazamo wa programu
- Uwezo wa kutumia maonyesho na sensorer. Mradi huu utatumia SenseHat
- Fanya kazi bila kichwa (bila kufuatilia, kibodi au panya)
Inafanyaje kazi
- Kwa kweli mtumiaji atahitaji Pispberry 2 Pis iliyounganishwa na hifadhidata ya Firebase, lakini Pi moja itafanya kazi pia.
- Kutumia SenseHat, Pi ya kwanza (Pi1) itagundua mwendo na kiharusi wakati Pi ya pili (Pi2) itaonyesha arifa za harakati.
-
Wakati Pi1 inagundua mwendo, inafanya vitu 3
- harakati ya logi kwenye hifadhidata
- tengeneza ingizo la arifa kwenye hifadhidata ya kuonyesha Pi2
- tuma mtumiaji ujumbe wa maandishi kumjulisha mtumiaji wa harakati.
- Wakati Pi2 inagundua arifa ya kuonyesha kutoka hifadhidata, mambo mawili hufanyika
- Onyesho la LED la Pi2 litaonyesha arifa hiyo mfululizo
- Mtumiaji anaweza kufuta arifa kwa kubonyeza kitufe cha Pi2 SenseHat. Hii pia itaondoa uingiaji wa arifa kwenye hifadhidata.
- Na programu ya iOS, mtumiaji anaweza
- fikia hifadhidata; soma na ufute logi ya harakati
- mtumiaji anaweza kutuma Pi1 kuonyesha ujumbe kwenye onyesho la LED la Pi1.
Matumizi ya Vitendo
- Ikiwa utaweka gari lako kwenye wifi. Ambatisha pakiti ya betri kwa Pi1 (tazama picha). Ficha Pi1 kwenye gari lako. Weka Pi2 mahali pengine panapoweza kuonekana kwa urahisi kama vile karibu na dawati lako (tazama picha).
- Maombi mengine ni kuweka Pi1 ndani ya nyumba yako kando ya mlango. Pi ni ndogo sana hivi kwamba watu wengi hawataigundua haswa ikiwa iko nyuma ya bawaba (tazama picha). Kisha weka Pi2 yako kwenye dawati lako la kazi.
- Mbwa kuingia katika doa ndani ya nyumba sio kudhani? Weka Pi1 katika eneo hilo. Hakikisha unaweka Pi kwenye sanduku dhabiti ili mbwa wako asiitafune.
Kwa muda mrefu kama Pis wako yuko katika wifi anuwai, wanaweza kukuarifu au kukujulisha juu ya harakati. Ikiwa huna Pi ya pili, unaweza kutumia tu Pi1 kugundua mwendo na kupokea arifa za SMS kupitia simu yako ya rununu.
Muswada wa Vifaa
- Mbili (2) Raspberry Pi 3s zinazoendesha Raspbian (Raspberry Pi 2 itafanya kazi pia na wong dongle)
- Kofia mbili (2) za Sense
- Kifaa cha Mac na iOS
Programu Inahitajika
- Maktaba ya Pyrebase (inayounganisha na Firebase)
- Maktaba ya SenseHat (ya kupata accelerometer na onyesho la LED)
- Maktaba ya Twilio (ya kutuma SMS)
- Python 3, iliyojengwa na Raspbian mpya
- Raspbian aliye na IDLE
- Xcode8 na Cocoapod kwenye Mac yako
- Utayari wa kujifunza na kuchunguza
Kumbuka: Hii sio suluhisho pekee la usalama wa Pi. Ikiwa una maoni yoyote, mapendekezo, au unataka tu kurekebisha nambari yangu, tafadhali acha maoni hapa chini! =)
Hatua ya 1: Weka Akaunti za Firebase na Twilio
Kwanza, kabla ya kuanza kucheza na Pis wetu, tunahitaji kuanzisha Firebase na Twilio. Firebase ni backend ya Google kama huduma. Firebase inajumuisha huduma kama vile hifadhidata, ujumbe wa wingu, uthibitishaji, uhifadhi, n.k Kwa mradi huu, tutahitaji tu kutumia hifadhidata ya wakati halisi wa Firebase na uthibitishaji. Uthibitishaji utahitajika kusoma na kuandika kwa hifadhidata yako ya Firebase. Kuanzisha Firebase:
- Jisajili kwa akaunti ya bure ya Firebase
- Nenda kwenye koni. Unda mradi mpya na uipe jina.
- Chini ya menyu ya kushoto, bonyeza "Muhtasari"
- Bonyeza "Ongeza Firebase kwenye programu yako ya wavuti", nakili APIKey yako na projectid (sio url). Kitambulisho cha Mradi kiko katika URL tofauti kama hifadhidata:
- Chini ya menyu ya kushoto, bonyeza "Uthibitishaji". Nenda kwa "Ingia Njia" na uwezeshe "Barua pepe / Nenosiri"
- Chini ya "Mtumiaji" fungua akaunti mpya ya mtumiaji na barua pepe / nywila unayochagua. Utatumia kitambulisho hiki kuingia kwenye hifadhidata.
- Chini ya menyu ya kushoto, nenda kwenye "Hifadhidata"
- Hii ni Hifadhidata yako. Ni tupu sasa hivi. Ikijazwa, itakuwa katika muundo wa JSON. URL inapaswa kuwa sawa na ile uliyoona hapo awali.
Twilio inaruhusu watengenezaji kutuma ujumbe kwa wateja wao. Tutatumia kutuma SMS kwa simu yako wakati Pi itagundua harakati. Twilio itakupa nambari ya simu ya kutuma SMS. Kuanzisha Twilio:
- Jisajili kwa akaunti ya bure kwenye wavuti ya Twilio
- Nakili akaunti yakoSID na authToken
- Bonyeza "Vizuizi vya Kesi" na uchague "pata nambari yako ya kwanza ya Twilio"
- Nakili nambari yako mpya ya simu
Hatua ya 2: Sanidi Pis yako
Kabla ya kuanza programu ya Pis, tunahitaji kufanya usanidi. Hakikisha una nenosiri kuingia kwa Pis yako. Kwanza tutaunganisha bodi za SenseHat kimwili kwa Pis. Ifuatayo, tutaweka maktaba muhimu ya SenseHat, Twilio na Pyrebase. Hifadhidata ya wakati halisi wa Firebase iliundwa kwa vifaa vya rununu au wavuti. Walakini, tunaweza kusoma na kuandika hifadhidata ya wingu kupitia API ya Mapumziko na maktaba ya msaidizi kama Pyrebase.
Unganisha SenseHatHakikisha kuwa SenseHats zimeunganishwa na Pis yako. Ikiwa una kesi isiyo ya kawaida, unaweza kuhitaji kuondoa Pi kabla ya kuunganisha SenseHat.
Usakinishaji wote wa Maktaba utafanywa kwenye Kituo
- Boot up Pis yako ikiwa tayari haujapata.
- Baada ya kuanza, unapata upinde wa mvua wa rangi kwenye SenseHat yako! (tazama picha)
-
Nenda kwenye terminal na usasishe / sasisha-dist, chapa:
- Sudo apt-pata sasisho
- sudo apt-kupata dist-kuboresha
-
Baada ya kuboreshwa kufanywa, andika zifuatazo kusanikisha maktaba za SenseHat:
Sudo apt-get kufunga kofia ya akili
-
Ili kufunga Pyrebase, andika:
Sudo pip kufunga pyrebase
-
Mwishowe, sakinisha Twilio
sudo bomba kufunga twilio
Hatua ya 3: Hati ya Python ya Pi1
Kama tulivyosema hapo awali, Pi1 itakuwa Pi ambayo itatumika kugundua mwendo. Thamani za kasi ya kasi ya SenseHat itatumika kuamua harakati. Kwa hivyo, nambari ya Pi1 itakuwa karibu na kufikia viwango vya nguvu vya kasi ya kasi na kuingia kwenye mwendo uliogunduliwa kwenye Hifadhidata ya Firebase. Hapa kuna muhtasari wa mtiririko wa mchakato:
- Ikiwa Pi1 itagundua mwendo, itaongeza kiingilio kwa mtoto wa "arifu" katika Firebase DB.
- Pi1 pia itasasisha mtoto "notifypi2" na ujumbe wa arifa kuhusu harakati hiyo.
- Pi2, kisha inasoma "notifypi2" na kuonyesha arifa kwenye onyesho lake la tumbo la LED.
Nimejumuisha maandishi ya Pi1 Python kwa wewe kufuata. Maoni katika hati yanaelezea nambari inafanya nini.
Vidokezo vya ziada na ufahamu wa hati ya Pi1
- Kwa usanidi wa Firebase na Twilio. Jaza vitufe vinavyofaa vya API, vitambulisho, nywila, nk ambazo ulinakili kutoka kwa hatua zilizopita.
-
Kuhusu uthibitishaji wa Firebase, kwa usalama wa ziada, unaweza kuuliza pembejeo ya mtumiaji badala ya kuweka ngumu hati hizi. Kila wakati tunapoandika au kusoma kutoka kwa hifadhidata, tutahitaji kujumuisha
mtumiaji ['idtoken'] na th
pata (), Push (), weka () njia.
- Joto la CPU linahitajika ili tuweze kuingilia kati ikiwa joto kali la Pi linaingia kwenye gari au mazingira yaliyofungwa.
- Tunachukua pia dhamana kamili ya vikosi vya G kwani hatuhitaji kujua maadili hasi. Tunahitaji tu kujua ikiwa kuna vikosi vya G.
- Ikiwa taarifa itaangalia maadili ya kasi ya kasi. Ikiwa vikosi vya G ni kubwa kuliko 1 kwa mwelekeo wowote, Pi1 itaweka wakati wa harakati na kuonyesha alama ya mshangao kwenye onyesho lake la LED. Pia itasasisha mtoto "notifypi2". Wakati "notifypi2" inaposasishwa, Pi2 ataisoma na kuonyesha "!!!" kwenye onyesho lake la LED kumjulisha mtumiaji wa uwezekano wa harakati / kuingia. Pi1 pia itatuma mtumiaji arifa ya SMS ya harakati.
- Unapotumia njia ya kushinikiza (), Firebase itazalisha kiotomatiki mtoto aliye na ingizo mpya. Hii inahitajika kwa hivyo data ya harakati iliyoingia itakuwa ya kipekee. njia ya kuweka () kwa upande mwingine itaandika data zilizotangulia.
- Kitanzi cha pili cha 10 kuangalia hifadhidata ni muhimu ili Pi yako isiombe data kutoka Firebase. Ikiwa utaendelea kuweka barua taka ya Firebase, Google itakuondoa katika dakika 10 hivi.
- Firebase pia itamfukuza mtumiaji kila dakika 60 ikiwa ishara haiburudishwe. Nina kuweka upya kwa sekunde 1800 (dk 30).
Hatua ya 4: Hati ya Python ya Pi2
Ukiangalia picha, hiyo ni ya Pi2 inayoonyesha arifa ya harakati inayowezekana.
Hati ya Pi2 ni sawa kabisa na Pi1 isipokuwa hati haigunduli harakati. Pi2 huonyesha tu au kuweka upya ujumbe wa arifa kutoka kwa mtoto "notifypi2". Kwa kuwa hiyo ndio tofauti pekee, nitaelezea hapo chini.
- Kila sekunde 10, Pi2 itaangalia "notifypi2" kuonyesha. Ikiwa kuna ujumbe wa arifa wa kuonyesha, Pi2 itaionesha kila wakati ili mtumiaji aione.
- Uingiliaji wa mtumiaji tu wa kubonyeza kitufe cha starehe ndio ujumbe utafafanua na kuweka upya upande wa hifadhidata.
Hatua ya 5: Jaribu Pis
Wakati wa kujaribu Pis.
- Endesha maandishi kwa Pis mtiririko.
- Ingia kwenye Firebase na nenda kwenye sehemu ya hifadhidata ya miradi yako.
- Shake Pi1 yako, unapaswa kuona alama nyekundu ya mshtuko kwenye onyesho la LED la Pi1. Unapaswa pia kupata ujumbe wa SMS.
- Angalia hifadhidata, maingizo ya tahadhari yanapaswa kuanza kujitokeza. "notifypi2" inapaswa pia kusasishwa.
- Angalia Pi2. Unapaswa pia kusogeza "!!!" Ili kufuta ujumbe huu wa arifa, bonyeza tu kwenye starehe. "notifypi2" inapaswa kuwekwa upya. Angalia Firebase yako ili uthibitishe.
- Ikiwa unapata Pi1 nyeti sana kwa harakati, ongeza kizingiti hadi zaidi ya 1G katika hati ya Pi1.
Ikiwa yote yatakwenda sawa, hati zako hazitaanguka. Sasa, una mfumo wa kufanya kazi wa arifa. Mara baada ya Pi1 kugundua harakati au mitetemo, utapata arifa ya ujumbe wa SMS na arifa ya kuona ya LED kwenye Pi2.
Hatua ya 6: Kuunda R-PiAlerts IOS App
Wakati wa kujenga programu ya iOS! Programu itakuwa rahisi sana. Itakuwa na LoginViewController na ItemsTableViewController. VituTableViewController itaonyesha arifa za tahadhari kutoka kwa mtoto wa "arifu". Mtu anaweza pia kufuta maingizo ya hifadhidata kutoka kwa programu. Ili kukuokoa maumivu ya kichwa, ikiwa una mpango wa kuangalia mafunzo ya mkondoni ya Firebase, hakikisha unatafuta mafunzo kutoka kwa Machi 2016 kwani kulikuwa na mabadiliko makubwa mwaka jana karibu wakati huo. Chochote kabla ya Machi 2016 kitakuwa urithi. Ninavutiwa na faili za haraka, tafadhali pitia maoni kwenye nambari. Ikiwa unataka mafunzo ya undani juu ya jinsi ya kuunda programu ya Firebase ambayo inasoma hifadhidata, angalia mafunzo ya Ray Wunderlich.
Sanidi Muhtasari wa Mradi wako wa iOS
- Unda mradi mmoja wa mtazamo wa iOS katika Xcode.
- Nakili kitambulisho cha kifungu
- Nenda kwenye mradi wako wa Firebase kwenye wavuti na uunda faili ya info.plist na kitambulisho cha kifungu.
- Ongeza faili ya GoogleService-info.plist kwenye mradi wako. Info.plist hii inafanya kazi tu na Mradi maalum wa Firebase uliouunda.
- Funga nje ya Xcode na usakinishe Firebase kupitia Cocoapods. Hakikisha kufunga Auth na Hifadhidata.
-
Anzisha tena Xcode, kisha usanidi AppDelegate.swift yako kwa Firebase. Inachukua tu mistari 2 ya nambari.
Ingiza Firebase an
Sanidi ya FIRApp (). Kwa hiari, Firebase ina huduma ya kuendelea ambayo inachukua tu mstari 1 wa nambari
FIRDatabase.database (). KusisitizaKuwezeshwa = kweli
- Hatua za usanidi wa kina zinaweza kupatikana kwenye Wavuti ya Firebase
Jinsi Programu Inavyoingiliana na Hifadhidata ya Firebase:
- Programu itahitaji kudhibitisha mtumiaji.
- Mara baada ya kuthibitishwa, programu inachukua picha ya hifadhidata ya Firebase na kuihifadhi kama kitu cha "Bidhaa".
- Kitu kilichosemwa kitajaza safu. Safu iliyotumiwa itatumika kujaza mwonekano wa meza.
- Mtazamaji atatazama mabadiliko kwenye hifadhidata ya Firebase na kuunda picha.
- Mara mabadiliko yatakapogunduliwa, safu itaongezwa kutoka kwenye picha mpya.
- Mwonekano wa meza kisha utapakiwa upya kuonyesha mabadiliko.
Muhtasari wa Jumla juu ya Jinsi ya Kuijenga App
- Angalia picha juu ya jinsi programu imewekwa katika mjenzi wa kiolesura cha Xcode.
- Unda ViewController katika wajenzi wa kiolesura na elekeza darasa maalum kwa LoginViewController.swift.
- Ongeza viwanja vya maandishi kwa barua pepe na nywila. Usisahau kuwasha "Uingizaji Nakala Salama" kwa uwanja wa nywila. Ongeza kitufe cha kuingia.
- Unganisha uwanja wa maandishi na kitufe kwenye LoginViewController.swift. LoginViewController.swift itashughulikia uthibitishaji.
- Ongeza Kidhibiti cha Urambazaji katika kijenzi cha kiolesura. Unda segue kutoka kwa LoginViewController kwa Kidhibiti cha Urambazaji. Hakikisha kutoa kitambulisho kitambulisho.
- Weka darasa la kawaida la mwonekano mpya wa meza uliokuja na kidhibiti cha kusogeza ili kuonyesha VituTableViewController.swift. Mimi pia nina vifungo 2 kwenye VituTableViewController: Logout na kitufe cha Ongeza. Unganisha vifungo kwenye ItemsTableViewController.swift.
- Kuhusu msimbo wa LoginViewController.swift. Mtumiaji ataingiza hati za kuingia na Firebase itamrudisha mtumiaji. Ikiwa mtumiaji yupo, itafanya sekunde na kitambulisho. (tazama nambari iliyoambatanishwa)
- Ongeza darasa la Item.swift (angalia nambari iliyoambatanishwa)
- Kuhusu nambari ya VituTableViewController, ni nambari nzuri ya kutazama meza. Kutakuwa na mwangalizi wa kufuatilia mabadiliko kwenye hifadhidata yako iliyohifadhiwa kama picha kama kitu cha Bidhaa. Kisha kitu cha kipengee kitaongeza safu ili kujaza mwonekano wa meza. Kitufe cha Ongeza kinaweka kiingilio katika hifadhidata ya Firebase ya Pi1 kusoma na kuonyesha. Kwa kucheka, pia niliongeza nambari (tazama nambari iliyoambatanishwa)
Hatua ya 7: Jaribu App
Endesha programu yako
- Ingia na kutikisa Pi1 yako. Unapaswa kuanza kuona arifa mpya za tahadhari zinajitokeza.
- Gonga kitufe cha kuongeza na uangalie onyesho lako la Pi1 ujumbe wako.
- Telezesha kidole kushoto, angalia maingizo ya "Arifa" yanaondolewa.
- Je! Unapokea arifa nyingi sana mfululizo? rekebisha kizingiti cha accelerometer au ongeza muda wa kulala katika hati ya Pi1.
Hatua ya 8: Hitimisho
Ajabu! Sasa tuna Pis ambayo inaweza kugundua harakati na kukutumia arifa za harakati. Juu ya hayo, unaweza kudhibiti kwenye kumbukumbu yako ya ujumbe wa tahadhari na kifaa chako cha iOS! Wakati wa kupeleka Pis. Weka Pi1 karibu na mlango wako na Pi2 karibu na eneo lako la kazi. Wakati mwingine mtu anapoingia, unaweza kuangalia hali hiyo! Au bora bado, jaribu kujificha kwa Pi kwenye gari lako na kifurushi cha betri. Slam milango mara chache, angalia kinachotokea!
Huu ni mwanzo tu wa uwezekano wa kile unaweza kufanya na Raspberry Pi na Firebase. SenseHat pia inajumuisha sensorer za mazingira, gyros, na dira. Unaweza kuanzisha Pis yako kuingia kumbukumbu fulani kwa mazingira. Unataka kuongeza mchezo wako? Wakati Pi yako inagundua harakati, tumia picha za kunasa kamera na uwe na maandishi ya Pi picha. Pia jaribu kutumia hesabu ya maono ya kompyuta kutambua nyuso. ikiwa ni uso wa mtu unayemjua, unaweza kujulishwa! Furahiya!
Ilipendekeza:
Kitufe cha Usalama kisichotumia waya kwa Usalama wa PLC: Hatua 6 (na Picha)
Kitufe cha Usalama kisichotumia waya kwa Usalama wa PLC: Mradi huu ni uthibitisho wangu wa dhana ya kutumia IoT na (mwishowe) roboti kuunda safu ya ziada ya usalama kwa vifaa hatari vya utengenezaji. Kitufe hiki kinaweza kutumika kuanza au kuacha michakato mingi, pamoja na udhibiti wa ishara
Mfumo mmoja wa Usalama wa Usalama wa Wanawake: Hatua 3
Mfumo mmoja wa Usalama wa Wanawake wa Kugusa: Moja ya kengele ya kugusa Mfumo wa usalama wa Wanawake ukitumia mtawala mdogo wa 8051Katika Usalama wa Wanawake Ulimwenguni Leo ni Suala Muhimu Zaidi Katika Nchi. Leo Wanawake Wanasumbuliwa Na Kusumbuka Na Wakati Mwingine Wakati Msaada Wa Haraka Unahitajika. Hakuna Lugha Inayohitajika
Jinsi ya kutengeneza Mfumo wa Usalama wa Mwendo wa Usalama wa PIR: Hatua 3
Jinsi ya kutengeneza Mfumo wa Usalama wa Mwendo wa Usalama wa PIR: Katika video hii tutafanya mfumo wa usalama ambao hugundua mwendo na unazungumza. Katika mradi huu sensorer ya PIR hugundua mwendo na moduli ya MP3 ya DFPlayer Mini hucheza sauti iliyofafanuliwa hapo awali
Mfumo mmoja wa USALAMA WA USALAMA WA kugusa One: Hatua 5
Mfumo wa USALAMA WA WANAWAKE Mguso mmoja: Katika Usalama wa Wanawake Ulimwenguni Leo ni Suala Muhimu Zaidi Katika Nchi. Leo Wanawake Wanasumbuliwa Na Kusumbuka Na Wakati Mwingine Wakati Msaada Wa Haraka Unahitajika. Hakuna Mahali Mahitajika Kama Wanawake Ili Watu waweze Kusaidia, umuhimu wake kwamba sisi
Mfumo wa Usalama wa Utambuzi wa Usoni kwa Jokofu na Raspberry Pi: Hatua 7 (na Picha)
Mfumo wa Usalama wa Utambuzi wa Usoni kwa Jokofu Pamoja na Raspberry Pi: Inatafuta mtandao Nimegundua kuwa bei za mifumo ya usalama hutofautiana kutoka $ 150 hadi $ 600 na zaidi, lakini sio suluhisho zote (hata zile za gharama kubwa sana) zinaweza kuunganishwa na zingine zana nzuri nyumbani kwako! Kwa mfano, huwezi kuweka