Tartalomjegyzék:

Talos, biztonságban az ingázás során: 5 lépés
Talos, biztonságban az ingázás során: 5 lépés

Videó: Talos, biztonságban az ingázás során: 5 lépés

Videó: Talos, biztonságban az ingázás során: 5 lépés
Videó: 2 НАСТОЯЩИЕ КВАРТИРНЫЕ УЖАСНЫЕ ИСТОРИИ, РАССКАЗАННЫЕ В... 2024, November
Anonim
Talos, biztonságban az ingázás során
Talos, biztonságban az ingázás során

Zaklatás áldozata lenni ingázás közben meglehetősen gyakori dolog sok ember, különösen a nők számára. Bármi legyen is az ország, a tömegközlekedési eszközök használata gyakran megegyezik azzal, hogy tudja, hogy szexuálisan zaklathatják, vagy akár követhetik is őket hazafelé menet. Ezekben a helyzetekben nem mindig könnyű reagálni és felmérni a fenyegetést, egy egyszerű ijesztgetéstől a macskahívástól a valódi aggodalomig, ami rossz történhet. A félelem mindig tényező, és ha nem akarjuk felhívni a potenciális zaklató figyelmét, megakadályozhatjuk, hogy figyelmeztessük valakit, akiben megbízunk.

A Talos egy kis eszköz, amely csatlakozik a telefonhoz, és lehetővé teszi, hogy szöveget küldjön a választott személynek. Az SMS automatikusan tartalmazza az utolsó ismert tartózkodási helyét és az Ön által választott előre rögzített szöveget. Egy egyszerű kulcstartó megjelenésével a Talos a táskájához marad, és lehetővé teszi, hogy megnyomásával diszkréten aktiválja, ami elindítja a szöveges üzenet küldését. Alacsony energiafogyasztása azt jelenti, hogy nem kell minden nap töltenie, és kockáztathatja, hogy elfelejti - vagy csak mindennap emlékeztet arra, hogy milyen fenyegetéssel kell szembenéznie.

Ennek a projektnek három része van:

- Fizikai modul: Puck-js modult használtam, amely az nRF52832 modulon alapul, és az Espruino jóvoltából Javascript segítségével programozható- Android alkalmazás: Egy egyszerű alkalmazást hoztam létre, amely csatlakozik a modulhoz- Kulcstartó borító: Egy egyszerű a Puck JS borítója úgy néz ki, mint egy egyszerű kulcstartó

Kellékek

- Puck.js modul (https://www.puck-js.com)

- Android telefon legalább 8.0 verzióval- Androidos Studio telepített számítógép

- 3D nyomtató (opcionális)

1. lépés: Áttekintés

Áttekintés
Áttekintés

Ez az ábra képet ad a különböző összetevőkről: maga a Puck modul kódja nagyon egyszerű, és hagyjuk, hogy az Android alkalmazás gondoskodjon a kapcsolatról, ahelyett, hogy a Puck letapogatná a telefont. Az akkumulátor élettartamának megőrzése érdekében a Bluetooth Low Energy és annak jellemzői segítségével kommunikálunk az alkalmazás és az eszköz között

2. lépés: A korong programozása

A korong programozása
A korong programozása

Miután ellenőrizte a puck-js.com webhelyen, hogy böngészője és számítógépe támogatja-e a Web Bluetooth funkciót, keresse fel a www.espruino.com/ide oldalt, és csatlakozzon a Puckhoz az oldal bal felső sarkában található dugó ikonra kattintva.

Ezután másolja és illessze be a kódot a csatolt fájlból a szerkesztőbe, és küldje el a Puckba.

A kód első részében a Blink and updateCharacteristic függvényt definiáljuk, amelyet a kód későbbi részében fogunk használni. Az updateCharacteristic függvényben az aktuális dátumot rendeljük hozzá a karakterisztikához, hogy megbizonyosodjunk arról, hogy az valóban új értékként fog megjelenni. Ezt követően értesítünk minden előfizetőt erről a frissítésről.

Ezen nyilatkozatok után a végrehajtandó kódra:

Az 56. sorban található kód lehetővé teszi, hogy lekérje a korongjának fizikai címét, amelyet meg kell küzdenie az Android alkalmazásban: hagyja abba ezt a sort, és látni fogja a címet a naplókon az IDE bal oldalán (lásd a mellékletet) képernyőkép). Ha megvan ez az érték, megjegyzést fűzhet a sorhoz, vagy hagyhatja így.

Ezt követően egy egyedi BLE szolgáltatást definiálunk (az UUID -k véletlenszerű értékek), három különböző jellemzővel, amelyek mindegyike bejelenthető. Nem magukat az értékeket fogjuk használni üzenetünk közvetítésére, hanem csak azt, hogy megváltoztak.

A 78. és 79. sorban olyan hallgatókat állítottunk be, amelyek miatt a beépített LED villogni fog, amikor az eszközt csatlakoztatják vagy leválasztják egy másik Bluetooth -eszközről. Végül a 81. sorban egy megszakítást csatolunk az integrált gombhoz, így annak megnyomása meghívja az updateCharacteristic függvényt

3. lépés: Az Android -alkalmazás létrehozása

Az Android -alkalmazás létrehozása
Az Android -alkalmazás létrehozása
Az Android -alkalmazás létrehozása
Az Android -alkalmazás létrehozása
Az Android -alkalmazás létrehozása
Az Android -alkalmazás létrehozása
Az Android -alkalmazás létrehozása
Az Android -alkalmazás létrehozása

Mivel az egész alkalmazás tartalmaz néhány meglehetősen nehéz könyvtárat, csak a forrásfájlokat és az alkalmazás gradle fájlját helyeztem el a mellékelt ZIP -ben. Ahhoz, hogy működjön, el kell indítania az Android stúdiót, és létre kell hoznia egy új projektet (válassza az Üres tevékenység lehetőséget, lásd a képernyőképet). Válassza a 26 -ot (Android 8.0, Oreo) az alkalmazás minimális verziójaként, mivel az általam írt kódok egy része olyan API -kat használ, amelyek korábban nem léteztek. A projekt beállítása után lesz egy build.gradle fájlja az alkalmazáshoz (build.gradle - Module: App). Nyissa meg, és másolja ki a tartalmat a zip fájlból: az IDE felszólítja Önt egy Gradle szinkronizálásra, amely során letölti az északi könyvtárat, amelyre az alkalmazás támaszkodik. Ezután egyszer elindíthatja az alkalmazást, és ellenőrizheti, hogy működik -e.

Miután telepítette az alkalmazást az eszközére, lépjen a beállítások menübe, válassza az Alkalmazások lehetőséget, és keresse meg az alkalmazást a listában. Válassza ki, majd kattintson az "Engedélyezés" gombra. Ott lesz néhány választógombja, amelyek alapértelmezés szerint ki vannak kapcsolva: ellenőrizze mindegyiket, és győződjön meg arról, hogy az alkalmazás hozzáfér mindenhez, amire szüksége van.

Most importálhatja a forrásfájlokat a zip archívumból: ennek legegyszerűbb módja az új osztályok létrehozása (jobb klikk, új Kotlin fájl/osztály), és ugyanazt a nevet adni nekik, mint az archívumból. Miután megnyitotta az osztályfájlt, szabadon lemásolhatja és beillesztheti a kódot.

Ha csak az alkalmazást szeretné használni, módosítsa a címet a BTService osztály 31. sorában, és írja be az előző lépésben kapott címet. Most már képesnek kell lennie arra, hogy összeállítsa az alkalmazást, és futtassa az eszközén!

Ha többet szeretne tudni az alkalmazás működéséről, olvassa el:-)

A következő ábra jobban megérti, hogy mi történik az alkalmazáson belül: - A MainActivity az, amelyet a felhasználó csak egyszer fog használni: fő célja, hogy megadhassa a személy telefonszámát szeretnék kapcsolatba lépni a Talos használatakor, valamint az elküldendő szöveget.

- A BTService egy előtérben lévő szolgáltatás, ami azt jelenti, hogy amikor elindítják, állandó értesítéseket hoz létre, amelyek korlátozzák annak valószínűségét, hogy az Android megöli a szolgáltatást. Ez a szolgáltatás a klasszikus Bluetooth Low Energy eljárással próbál csatlakozni a Taloshoz - használtam a Nordic mintakódját és a többi forrást, amit találtam. Jelenleg kifejezetten a korong UUID azonosítóját keresi: módosítsa ezt az értéket (private val remoteMacAddress = "CF: EB: 2F: 6E: 33: 30"), hogy illeszkedjen a készülék saját, az előző lépésben kapott címéhez. Miután megtalálta az eszközt, és ellenőrizte, hogy rendelkezik -e az általunk keresett szolgáltatással, feliratkozik a jellemzőre vonatkozó értesítésekre, amelyek frissülnek, amikor a felhasználó megnyomja a gombot.

Amikor a BTService frissítést kap ehhez a tulajdonsághoz, akkor egy LocalBroadcast objektumot aktivál, hogy az alkalmazás többi összetevője reagáljon. Hívja az SMSIntentService szolgáltatást is, hogy elküldje az SMS -t

- Az SMSIntentService lekéri a telefonszámot és a szöveget a SharePreferences -ből annak érdekében, hogy a felhasználó megadja az utolsó értékeket. Ezután automatikusan elküldi az SMS -t anélkül, hogy a felhasználó beavatkozna az alkalmazásba, és hozzáadja a felhasználó utolsó ismert helyét az SMS -hez.

4. lépés: Egy tok tervezése

A Puckhoz tartozó jelenlegi tok már tartalmaz egy kis hurkot a kulcstartóhoz való rögzítéshez, így szinte így is hagyhatnánk. A teljesen fehér szilikon burkolat, amit történetesen még mindig elég furcsán éreztem, így annak érdekében, hogy ne merítsen gyanút, egy egyszerű tárgyat terveztem a korong tetejére. Azt mondják, hogy egy kép ezer szót ér, gondoltam, hogy másodpercenként 25 képet adok neked: a következő videóban látni fogod, hogyan használtam a Fusion 360 -at a tervezés elkészítéséhez, beleértve az általam használt parancsokat és parancsikonokat:

5. lépés: Összerakni

Most, hogy megvannak a különböző összetevők, itt az ideje összerakni őket! A Puck modul jelenlegi tokjában már van egy lyuk, amellyel láncot helyezhet be - történetesen volt egy régi kulcstartóm, amelyet szétszedtem, de ezeket is könnyen megvásárolhatja. Szerelje szét a gyűrűt fogóval - miután megtalálta a gyűrű nyílását, mozgassa mindkét felét ellentétes irányba, az egyik maga felé, a másik pedig távol magától. Ezután behelyezheti a gyűrűt a korongba, és visszacsukhatja.

3D nyomtatás az imént létrehozott dizájnnal - használtam egy lila PLA -t, és rápattintottam a korong tetejére

Ajánlott: