Cuprins:
- Pasul 1: Instalați blocuri reactive
- Pasul 2: Descărcați aplicația din biblioteci
- Pasul 3: Aplicația la nivel superior
- Pasul 4: Activați SMS
- Pasul 5: Construiți și rulați aplicația pe laptop
- Pasul 6: Rulați aplicația pe computer
- Pasul 7: Exportați ca fișier JAR executabil
- Pasul 8: Pregătiți-vă Raspberry Pi
- Pasul 9: Implementați aplicația pe Raspberry Pi
- Pasul 10: Rulați aplicația pe Raspberry Pi
- Pasul 11: Modificați aplicația
Video: Sistem de alarmă de detectare a mișcării: 11 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Notă! Reactive Blocks nu mai este disponibil pentru descărcare. O cameră USB de bază poate fi utilizată pentru a detecta mișcarea într-o cameră. În pașii următori vă vom arăta cum puteți utiliza blocurile reactive pentru a programa o aplicație Java gata de rulat care trimite SMS sau e-mail atunci când este detectată mișcarea. Cu Reative Blocks creați aplicații Java SE, astfel încât aplicația de alarmă să poată fi implementată pe orice mașină cu Java SE și o cameră atașată sau integrată. Aplicația este ușor de implementat pe Pi, deoarece versiunea Raspbian are Oracle Java preinstalat..
De asta aveți nevoie:
- Raspberry Pi Model B + cu Raspbian OS
- Cameră USB standard
- cablu Ethernet
- Ecran și tastatură pentru Pi
- Computer Windows sau MAC cu JDK
- Notă! Reactive Blocks nu mai este disponibil pentru descărcare. Veți avea nevoie de Reactive Blocks, un plugin Eclipse, pentru a programa aplicația.
Această aplicație de alarmă este unul dintre câteva exemple de sisteme modificabile care sunt accesibile după instalarea blocurilor reactive. Aplicația este gata să se termine și nu veți avea nevoie de abilități de programare Java pentru a finaliza tutorialul. Pentru a vă crea propriile aplicații și blocuri Reactive Blocks, trebuie să fiți un programator Java competent. Când construiți aplicații mai complexe cu mai mulți senzori și actuatori, Reactive Blocks face mai ușor să obțineți corect logica și fluxul de date. Reactive Blocks este gratuit pentru proiectele open source.
Pasul 1: Instalați blocuri reactive
Blocurile reactive au fost întrerupte
Pasul 2: Descărcați aplicația din biblioteci
Asigurați-vă că ați deschis perspectiva Blocuri reactive și că vă aflați în vizualizarea Blocuri. Din vizualizarea Blocuri selectați butonul de import și alegeți Aplicații de referință. Selectați proiectul Motion Detection. În acest moment vi se va cere să vă înregistrați cu un ID Google. Acest lucru vă va oferi acces imediat la bibliotecile blocurilor de construcții și la sistemele și tutoriale modificabile.
Proiectul de detectare a mișcării pe care l-ați descărcat include trei aplicații, Alarm System SMS, Alarm System Email și o aplicație de testare Test motion detectare. În acest tutorial vă ghidăm prin SMS-ul sistemului de alarmă. Dacă preferați să trimiteți e-mail, puteți face aceiași pași cu e-mailul sistemului de alarmă
Pasul 3: Aplicația la nivel superior
Acest pas oferă o explicație a aplicației. Prima imagine prezintă diagrama a aspectului aplicației complete la nivelul superior. Este compus din 7 blocuri; 5 blocuri de construcții standard din biblioteci și 2 blocuri personalizate care au fost realizate pentru această aplicație.
Blocurile standard din biblioteca IoT sunt:
- Grabber, apucă imagini de pe camera USB
- Detectarea mișcării, efectuează detectarea reală a imaginii
- Temporizator periodic, începe cu timbre precise și trimite un semnal pe bifă în fiecare perioadă.
- Buffer Eager, împinge automat primul element din coadă. Tamponul asigură că un singur mesaj este trimis către blocul SMS Trimite, deoarece poate procesa un singur mesaj la un moment dat.
- SMS Send Buffered, trimite SMS prin serviciul Twilio. Elementele care urmează să fie trimise sunt tamponate pentru a se asigura că este trimis un singur mesaj la un moment dat.
- Limitator, pentru a evita prea multe SMS-uri atunci când este detectat un intrus.
- Citiți fișierul Java Properties, citește datele de configurare din fișierul de intrare
- Vizualizare, vizualizează o imagine pe ecran.
Blocul Periodic Timer funcționează ca un motor de sistem. Acesta va emite periodic o bifă care trimite un semnal către blocul Grabber prin intermediul știftului de blocare. Blocul Grabber utilizează Analiza multimedia inteligentă deschisă pentru Java, OpenIMAJ. Când blocul este inițializat, se începe un fir separat pentru a citi datele de pe cameră. Firul ascultă o coadă de comandă. Când blocul primește o comandă prin intermediul știftului de prindere, acesta va face o fotografie și o va livra pe pinul de imagine.
Imaginea este apoi transmisă blocului de detectare a mișcării care efectuează detectarea reală a imaginii. Blocul de detectare a mișcării folosește și OpenIMAJ. O metodă din acest bloc compară două imagini și va semnaliza modificările imaginii atunci când este detectată mișcarea. Metoda este foarte intensă în procesor și trebuie rulată într-un fir separat. Când este detectată o imagine, aceasta este semnalizată pe pinul MotionDetected care va declanșa generarea unui mesaj SMS.
Căsuțele de culoare albastru deschis sunt toate metode Java create special pentru această aplicație. Dând clic pe un bloc metodă se deschide editorul Java.
Când faceți clic pe un bloc de construcție, puteți vedea detaliile logicii din interiorul blocului. De exemplu, dacă vă uitați în blocul ReadConfig, veți vedea că este realizat prin combinarea unui bloc de construcție existent și a 4 metode Java.
Limiterul pune o limită asupra cantității de mesaje generate. Observați P în colțul din dreapta al blocului de construcție. Acesta indică faptul că puteți seta minitervalul cât timp trebuie să aștepte aplicația înainte de a trimite un nou SMS. Setarea implicită este 300000ms, adică 5 minute. Pentru a schimba valoarea. Faceți clic dreapta pe bloc și alegeți parametri și generice.
Pasul 4: Activați SMS
Această aplicație de alarmă folosește Twilio ca serviciu SMS. Pentru a activa SMS-ul, trebuie să editați fișierul config / alarm-system.properties. Puteți să-l găsiți în vizualizarea exploratorului de pachete sub br.ref.motiondetection, consultați imaginea.
Acest fișier este același fișier folosit în e-mailul sistemului de alarmă. Dacă preferați să primiți notificări prin e-mail, veți utiliza această aplicație și veți edita fișierul cu acreditările dvs. de e-mail.
Dacă nu aveți serviciul Twilio, puteți modifica aplicația pentru a utiliza propriul serviciu SMS. De asemenea, avem un element de construcție gata de utilizare pentru serviciul Clickatell. Sau puteți atașa un modem pentru a trimite SMS.
Puteți găsi elemente de bază pentru e-mailul SMTP, AirVantage Cloud, IBM Bluemix și Xively pentru a numi câteva.
Rețineți că pentru a face modificări, trebuie mai întâi să vă faceți propriul proiect. Apoi copiați / copiați aplicația în proiectul dvs. nou creat. Puteți vedea cum se face acest lucru aici:
Nu ezitați să mă contactați dacă aveți nevoie de ajutor
Pasul 5: Construiți și rulați aplicația pe laptop
Trebuie să construiți aplicația înainte de a o rula și să o implementați pe Raspberry Pi. Acest lucru se face folosind generatorul de cod Reactive Blocks care creează un proiect Java complet din structura blocurilor de construcție. Codul care reprezintă diagramele este codul de sincronizare care tratează evenimentele în ordinea corectă și la momentul potrivit și, de obicei, reprezintă mai mult de 60% din liniile codului din programul dvs. Deoarece blocurile de construcție sunt structuri matematice precise, generatorul poate transforma această logică într-un cod foarte eficient. Aceasta este o caracteristică foarte frumoasă a blocurilor reactive, deoarece scrierea manuală a unui astfel de cod este dificilă și dificilă. Pentru a genera codul, acesta este tot ce trebuie să faceți:
Faceți clic dreapta pe proiectul Sistem de alarmă SMS din fila Proiecte și selectați ediția standard Java. Asigurați-vă că informațiile de înregistrare sunt INFO. Proiectul generat se va deschide apoi automat în fila Explorer pachet. Vedeți figura pentru detalii.
Pasul 6: Rulați aplicația pe computer
Acum puteți executa proiectul generat. În vizualizarea Package Explorer din proiectul generat _exe, faceți clic dreapta pe AlarmSystemSMS.launch și selectați RunAs și apoi alegeți AlarmSystemSMS.
Urmăriți fereastra de pe ecran și vizualizarea Consolă. Ar trebui să arate ceva ca a doua imagine.
Terminați aplicația închizând fereastra camerei.
Pentru aplicația de e-mail de trimitere: Dacă primiți o eroare de autentificare, asigurați-vă că este permisă trimiterea SMTP pentru e-mailul dvs. Consultați soluționarea problemelor în partea de jos a tutorialului de e-mail:
Pasul 7: Exportați ca fișier JAR executabil
Dacă doriți să rulați aplicația pe un Raspberry Pi, următorul pas este să exportați proiectul generat într-un fișier JAR rulabil. Pentru a face acest lucru, faceți clic dreapta pe proiectul executabil din vizualizarea exploratorului de pachete și alegeți export. Apoi selectați opțiunea Runnable file JAR și apăsați următoarea. În următoarea fereastră, selectați configurația de lansare și destinația de export corespunzătoare. În destinația de export, utilizați butonul de navigare pentru a putea plasa fișierul.jar într-un loc unde îl puteți găsi.
Pasul 8: Pregătiți-vă Raspberry Pi
- Pregătiți cardul SD cu Raspbian (am testat folosind NOOBS)
- Introduceți cardul SD în Raspberry pi
- Conectați camera
- Conectați rețeaua
- Conectați un ecran și tastatură la Pi
- Porniți Raspberry pi conectând micro USB pentru alimentare.
- Aflați adresa IP a Raspberry Pi. La pornire, Raspberry Pi va raporta ceva de genul „Adresa mea IP este 10.10. 15.107”
- Am testat cu Raspbian (autentificare implicită: pi, parolă: zmeură), care include Java implicit.
Pasul 9: Implementați aplicația pe Raspberry Pi
Pentru a copia fișierul jar rulabil de pe computer pe Rapsberry Pi, urmați acești pași:
- Deschideți un terminal pe mașină
- Mergeți la directorul în care se află fișierul JAR generat
- Tastați scp alarmsystem.jar [email protected]: ~ /
- Vi se va cere combinația de parole. „pi” este numele de utilizator implicit și „raspberry” parola implicită
- Mergeți la directorul în care se află fișierul de configurare alarm_system.properties. Cel mai ușor pentru mine este să copiez manual fișierul din editorul Eclipse în același director cu fișierul jar.
- Tastați scp motiondetection.ini [email protected]: ~ /
10.10.15.107 este adresa IP, înlocuiți-o cu adresa IP a Raspberry Pi.
- Puteți, desigur, utiliza și un stick de memorie pentru al copia pe Pi
Pasul 10: Rulați aplicația pe Raspberry Pi
Acum sunteți gata să rulați aplicația.
- Conectați-vă la Raspberry Pi direct sau de la distanță prin ssh.
- Creați un nou director de configurare: mkdir config
- Verificați dacă fișierul JAR rulabil și.ini au fost copiate pe Raspberry Pi
- Mutați fișierul.ini în directorul de configurare: mv alarm_system.properties config /
- Tastați sudo java -jar alarmsystem.jar
- Urmăriți ieșirea de pe consolă
- Terminați cu ^ C
Pasul 11: Modificați aplicația
Acum puteți modifica și extinde aplicația după cum doriți. Dacă doriți să extindeți un sistem importat precum acest sistem de alarmă, trebuie mai întâi să vă creați propriul proiect și să duplicați sistemul de alarmă în propriul dvs. proiect.
Rețineți că pentru a face modificări, trebuie mai întâi să vă faceți propriul proiect. Apoi copiați / copiați aplicația în proiectul dvs. nou creat. Puteți vedea cum se face acest lucru aici:
Urmați traseul Tutorial IoT pentru a obține descrieri pas cu pas despre cum să construiți sau să modificați aplicații specifice Reactive Blocks.
Recomandat:
Pingo: un lansator de mingi Ping Pong de detectare a mișcării și de înaltă precizie: 8 pași
Pingo: un lansator de mingi Ping Pong cu detecție de mișcare și precizie: Kevin Nitiema, Esteban Poveda, Anthony Mattacchione, Raphael Kay
Sistem de alarmă SMS pentru detectarea mișcării: 5 pași (cu imagini)
Sistem de alarmă SMS pentru detectarea mișcării: în acest proiect, voi combina un senzor de mișcare PIR ieftin cu un modul TC35 GSM pentru a construi un sistem de alarmă care vă trimite o „INTRUDER ALERT”. SMS ori de câte ori cineva încearcă să-ți fure lucrurile. Să începem
Lumină de noapte cu LED pentru pat cu detectare automată a mișcării: 6 pași (cu imagini)
Lumină de noapte cu LED pentru patul de detectare automată a mișcării: Bună ziua, băieți, ați venit la un alt instructabil care vă va ajuta întotdeauna în viața de zi cu zi și va adăuga un confort pentru a vă face viața mai ușoară. Acesta ar putea fi uneori un salvator al vieții în cazul persoanelor în vârstă care trebuie să se lupte să se ridice în pat
Cum să construiți un sistem de detectare a mișcării cu Arduino: 7 pași
Cum să construiești un sistem de detectare a mișcării cu Arduino: Construiește un contor de producție de mișcare și prezență utilizând un Feather HUZZAH programat cu Arduino și alimentat de Ubidots. Detectarea efectivă a mișcării și prezenței fizice în casele inteligente și în fabricarea inteligentă poate fi foarte utilă în aplicații variind
Urmărirea mișcării 3D Tfcd prin detectare capacitivă și ieșire LED: 6 pași (cu imagini)
Urmărirea mișcării 3D Tfcd prin detectare capacitivă și ieșire LED: În această instrucțiune este explicat modul în care mișcarea unei mâini poate fi urmărită într-un spațiu 3D utilizând principiul detectării capacitive. Prin schimbarea distanței dintre o folie încărcată de aluminiu și mâna dvs., capacitatea condensatorului va varia