Sadržaj:

Talos, čuvanje sigurnosti tokom putovanja: 5 koraka
Talos, čuvanje sigurnosti tokom putovanja: 5 koraka

Video: Talos, čuvanje sigurnosti tokom putovanja: 5 koraka

Video: Talos, čuvanje sigurnosti tokom putovanja: 5 koraka
Video: Special Primal Tendencies Marathon (episodes 1-15) 2024, Novembar
Anonim
Talos, čuvajući vas sigurnim tokom putovanja na posao
Talos, čuvajući vas sigurnim tokom putovanja na posao

Biti žrtva uznemiravanja dok putujete na posao prilično je uobičajena stvar za mnoge ljude, posebno za žene. Bez obzira na zemlju, korišćenje javnog prevoza često je jednako znanju da vas mogu seksualno uznemiravati ili čak pratiti dok hodate kući. U tim situacijama nije uvijek lako reagirati i procijeniti prijetnju, od jednostavnog zastrašivanja od mačka do stvarne zabrinutosti da bi se moglo dogoditi nešto loše. Strah je uvijek faktor, a ako ne želimo privući pažnju potencijalnog uznemiravatelja, to nas može spriječiti da upozorimo nekoga kome vjerujemo.

Talos je mali uređaj koji se povezuje sa vašim telefonom i omogućava vam da pošaljete tekst osobi po vašem izboru. SMS automatski uključuje vašu posljednju poznatu lokaciju i unaprijed snimljeni tekst po vašem izboru. Pojavom jednostavnog privjeska za ključeve, Talos ostaje pričvršćen za vašu torbu i omogućuje vam da ga diskretno aktivirate pritiskom na njega, što pokreće slanje tekstualne poruke. Njegova niska potrošnja energije znači da ga ne morate puniti svakodnevno i riskirati da ga zaboravite - ili samo svakodnevno podsjećati na prijetnju s kojom se suočavate.

Ovaj projekt ima tri dijela:

- Fizički modul: Koristio sam Puck-js modul, koji je zasnovan na modulu nRF52832 i može se programirati pomoću Javascripta zahvaljujući Espruino-Android aplikacija: Napravio sam jednostavnu aplikaciju koja se povezuje sa modulom- Privjesak za ključeve: Napravio sam jednostavan omot za Puck JS da izgleda kao jednostavan privjesak za ključeve

Supplies

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

- Android telefon sa najmanje verzijom 8.0- Računar sa instaliranim Android Studiom

- 3D štampač (opcionalno)

Korak 1: Pregled

Pregled
Pregled

Ovaj dijagram trebao bi vam dati predodžbu o različitim komponentama: kôd na samom Puck modulu je zaista jednostavan i dopuštamo Android aplikaciji da se brine o povezivanju, a ne da skenira Puck za telefon. Koristit ćemo Bluetooth Low Energy i njegove karakteristike za komunikaciju između aplikacije i uređaja, radi očuvanja trajanja baterije

Korak 2: Programiranje paka

Programiranje paka
Programiranje paka

Nakon što ste provjerili na puck-js.com da li vaš preglednik i računalo podržavaju Web Bluetooth, idite na www.espruino.com/ide i povežite se sa svojim Packom klikom na ikonu utikača u gornjem lijevom kutu stranice.

Zatim možete kopirati i zalijepiti kôd iz priložene datoteke u uređivač i poslati ga u pak.

U prvom dijelu koda definiramo funkciju Blink i updateCharacteristic koju ćemo kasnije koristiti u kodu. U funkciji updateCharacteristic dodjeljujemo trenutni datum karakteristici kako bismo bili sigurni da će se ona zaista vidjeti kao nova vrijednost. Zatim obavještavamo sve pretplatnike o ovom ažuriranju.

Nakon tih deklaracija, na kod koji će se izvršiti:

Kôd na liniji 56 omogućuje vam da dohvatite fizičku adresu vašeg packa koju ćete morati harcdodetirati u Android aplikaciji: raskomentirajte ovu liniju i vidjet ćete adresu u evidencijama s lijeve strane IDE -a (pogledajte priloženo snimak ekrana). Kad dobijete ovu vrijednost, možete komentirati redak ili ga ostaviti tako.

Nakon toga definiramo jednu prilagođenu BLE uslugu (UUID -ovi su slučajne vrijednosti) s tri različite karakteristike, od kojih je sve potrebno prijaviti. Nećemo koristiti same vrijednosti za prenošenje naše poruke, već samo činjenicu da su se promijenile.

Na linijama 78 i 79 postavili smo neke slušatelje koji će uzrokovati da integrirana LED dioda treperi kad god je uređaj spojen ili isključen s drugog Bluetooth uređaja. Konačno, na liniji 81, integriranom gumbu dodajemo prekid tako da će se pritiskom na njega pozvati funkcija updateCharacteristic

Korak 3: Kreiranje Android aplikacije

Kreiranje Android aplikacije
Kreiranje Android aplikacije
Kreiranje Android aplikacije
Kreiranje Android aplikacije
Kreiranje Android aplikacije
Kreiranje Android aplikacije
Kreiranje Android aplikacije
Kreiranje Android aplikacije

Budući da cijela aplikacija uključuje neke prilično teške biblioteke, uključio sam samo izvorne datoteke i gradle datoteku za aplikaciju unutar priloženog zip -a. Da bi to funkcioniralo, morate pokrenuti Android studio i stvoriti novi projekt (odaberite Empty Activity, pogledajte snimak zaslona). Odaberite 26 (Android 8.0, Oreo) kao minimalnu verziju aplikacije jer neki od kodova koje sam napisao koriste API -je koji prije toga nisu postojali. Nakon što je vaš projekt postavljen, imat ćete datoteku build.gradle za aplikaciju (označena build.gradle - Modul: aplikacija). Otvorite ga i kopirajte sadržaj iz zip datoteke: IDE će od vas zatražiti da izvršite sinhronizaciju Gradle tokom koje će preuzeti nordijsku biblioteku na koju se aplikacija oslanja. Zatim možete jednom pokrenuti aplikaciju i provjeriti radi li.

Nakon što je aplikacija instalirana na vašem uređaju, idite u izbornik postavki, odaberite Aplikacije i pronađite aplikaciju na popisu. Odaberite ga i kliknite na "Autorizacije". Tamo ćete imati nekoliko radio tipki koje će prema zadanim postavkama biti isključene: provjerite ih sve kako biste bili sigurni da aplikacija ima pristup svemu što joj je potrebno.

Sada možete uvesti izvorne datoteke iz zip arhive: najlakši način za to je stvaranje novih klasa (desni klik, nova Kotlin datoteka/klasa) i davanje istog imena onima iz arhive. Kada se datoteka klase otvori, možete je kopirati i zalijepiti u nju.

Ako samo želite koristiti aplikaciju, samo izmijenite adresu u retku 31 u klasi BTService i umjesto toga unesite adresu koju ste dobili u prethodnom koraku. Sada biste trebali moći sastaviti aplikaciju i pokrenuti je na svom uređaju!

Ako želite saznati više o tome kako aplikacija radi, čitajte dalje:-)

Sljedeći dijagram će vam dati bolje razumijevanje o tome što se događa unutar aplikacije: - MainActivity je ona koju će korisnik koristiti samo s vremena na vrijeme: njena glavna svrha je da može unijeti telefonski broj osobe koje bi željeli kontaktirati kada koriste Talos, kao i tekst za slanje.

- BTService je usluga u prvom planu, što znači da kad god se pokrene, stvara trajna obavještenja koja ograničavaju vjerovatnoću da će Android ubiti uslugu. Ova usluga pokušava se povezati s Talosom koristeći klasični Bluetooth Low Energy proces - koristio sam Nordic -ov uzorak koda i druge resurse koje sam mogao pronaći. Trenutno specifično traži UUID paka: trebali biste promijeniti ovu vrijednost (private val remoteMacAddress = "CF: EB: 2F: 6E: 33: 30") kako bi odgovarala vlastitoj adresi vašeg uređaja dobivenoj u prethodnom koraku. Nakon što pronađe uređaj i provjeri da li ima uslugu koju tražimo, pretplaćuje se na obavijesti o karakteristikama koje će se ažurirati svaki put kada korisnik pritisne dugme.

Kada BTService ipak primi ažuriranje za ovu karakteristiku, pokrenut će objekt LocalBroadcast kako bi ostale komponente aplikacije reagirale. Takođe će pozvati SMSIntentService da pošalje SMS

- SMSIntentService će dohvatiti telefonski broj i tekst iz SharePreferencesa kako bi korisnik unijeo posljednje vrijednosti. Zatim će automatski poslati SMS bez interakcije korisnika s aplikacijom i dodati SMS -u posljednju poznatu lokaciju korisnika.

Korak 4: Dizajniranje kućišta

Trenutni slučaj s kojim Puck već sadrži malu petlju za pričvršćivanje na privjesak za ključeve, pa bismo ga tako mogli ostaviti. Potpuno bijeli silikonski omotač za koji sam se slučajno još osjećao prilično pa sam, kako ne bi izazvao sumnju, dizajnirao jednostavan objekt koji bih stavio na vrh paka. Kažu da slika vrijedi hiljadu riječi, mislio sam vam dati 25 slika u sekundi: u sljedećem videu vidjet ćete kako sam koristio Fusion 360 za kreiranje dizajna, uključujući naredbe i prečice koje sam koristio:

Korak 5: Sastavite sve zajedno

Sada kada imate različite komponente, vrijeme je da ih spojite! Trenutni slučaj modula Puck već ima rupu koju možete koristiti za umetanje lanca - slučajno sam imao stari privjesak za ključeve koji sam rastavio, ali i njih možete lako kupiti. Odvojite prsten pomoću kliješta - nakon što pronađete otvor prstena, pomaknite svaku polovicu u suprotnim smjerovima, jedan prema vama, a drugi od vas. Zatim možete umetnuti prsten u pak i zatvoriti ga.

3D ispis dizajna koji ste upravo stvorili - upotrijebio sam nekoliko ljubičastih PLA i nataknuo ih na vrh Packa

Preporučuje se: