Obsah:

Alarmový systém detekcie pohybu: 11 krokov (s obrázkami)
Alarmový systém detekcie pohybu: 11 krokov (s obrázkami)

Video: Alarmový systém detekcie pohybu: 11 krokov (s obrázkami)

Video: Alarmový systém detekcie pohybu: 11 krokov (s obrázkami)
Video: Aqara E1 CH-C01E - беспроводная wi-fi 2К IP камера с поддержкой Apple Homekit 2024, Júl
Anonim
Alarmový systém detekcie pohybu
Alarmový systém detekcie pohybu

Poznámka! Reactive Blocks už nie je k dispozícii na stiahnutie. Na detekciu pohybu v miestnosti je možné použiť základnú USB kameru. V nasledujúcich krokoch vám ukážeme, ako môžete pomocou reaktívnych blokov naprogramovať aplikáciu Java pripravenú na spustenie, ktorá pri detekcii pohybu odošle SMS alebo e -mail. S Reative Blocks robíte aplikácie Java SE, takže aplikáciu alarmu je možné nasadiť na akomkoľvek počítači s pripojenou alebo integrovanou kamerou Java SE a kamerou. Aplikácia je ľahko nasaditeľná na Pi, pretože vydanie Raspbian má predinštalovanú aplikáciu Oracle Java..

To je to, čo potrebujete:

  1. Raspberry Pi Model B+ s OS Raspbian
  2. Štandardná USB kamera
  3. ethernetový kábel
  4. Obrazovka a klávesnica pre Pi
  5. Počítač Windows alebo MAC s JDK
  6. Poznámka! Reactive Blocks už nie je k dispozícii na stiahnutie. Na programovanie aplikácie budete potrebovať Reactive Blocks, doplnok Eclipse.

Táto aplikácia alarmu je jedným z niekoľkých príkladov modifikovateľných systémov, ktoré sú prístupné po inštalácii reaktívnych blokov. Aplikácia je pripravená na vybalenie a na dokončenie tutoriálu nebudete potrebovať žiadne znalosti programovania v jazyku Java. Na výrobu vlastných aplikácií a stavebných blokov Reactive Blocks musíte byť zdatný programátor v jazyku Java. Pri vytváraní komplexnejších aplikácií s niekoľkými senzormi a akčnými členmi Reactive Blocks uľahčuje uvedenie logiky a toku údajov do poriadku. Reactive Blocks je zadarmo pre projekty s otvoreným zdrojovým kódom.

Krok 1: Nainštalujte reaktívne bloky

Reactive Blocks bol ukončený

Krok 2: Stiahnite si aplikáciu z knižníc

Stiahnite si aplikáciu z knižníc
Stiahnite si aplikáciu z knižníc

Uistite sa, že ste otvorili perspektívu Reaktívne bloky a že ste v zobrazení Bloky. V zobrazení Bloky zvoľte tlačidlo importu a zvoľte Referenčné aplikácie. Vyberte projekt Detekcia pohybu. V tomto mieste budete požiadaní o registráciu pomocou účtu Google ID. To vám poskytne okamžitý prístup ku knižniciam stavebných blokov a upraviteľných systémov a návodov.

Stiahnutý projekt detekcie pohybu obsahuje tri aplikácie, poplašný systém SMS, poplašný systémový e -mail a testovaciu aplikáciu test detekcie pohybu. V tomto návode vás prevedieme SMS správou poplachového systému. Ak radšej odosielate e -maily, môžete rovnaké kroky urobiť s e -mailom z poplachového systému

Krok 3: Aplikácia na najvyššej úrovni

Aplikácia na najvyššej úrovni
Aplikácia na najvyššej úrovni

Tento krok prináša vysvetlenie aplikácie. Prvý obrázok ukazuje schému, ako vyzerá kompletná aplikácia na najvyššej úrovni. Skladá sa zo 7 stavebných blokov; 5 štandardných stavebných blokov z knižníc a 2 na mieru vyrobené bloky, ktoré boli vyrobené pre túto aplikáciu.

Štandardné bloky z knižnice IoT sú:

  • Grabber, zachytáva obrázky z USB fotoaparátu
  • Detekcia pohybu, vykonáva skutočnú detekciu obrazu
  • Periodický časovač, začína v presných časových pečiatkach a každé obdobie vysiela signál na kolík.
  • Buffer Eager, automaticky vytlačí prvý prvok vo fronte. Vyrovnávacia pamäť zaisťuje, že do bloku Odosielanie SMS je odoslaná iba jedna správa, pretože môže naraz spracovať iba jednu správu.
  • Odosielanie SMS je uložené vo vyrovnávacej pamäti, odosiela SMS prostredníctvom služby Twilio. Prvky, ktoré sa majú odoslať, sú uložené vo vyrovnávacej pamäti, aby sa zabezpečilo, že sa naraz odošle iba jedna správa.
  • Obmedzovač, aby sa predišlo príliš veľkému počtu správ SMS, keď je detekovaný narušiteľ.
  • Prečítajte si súbor vlastností Java, prečítajte si konfiguračné údaje zo vstupného súboru
  • Zobraziť, zobrazí obrázok na obrazovke.

Blok periodického časovača funguje ako systémový motor. Pravidelne bude vydávať kliešť, ktorý vyšle signál do bloku Grabber prostredníctvom držadla. Blok Grabber používa otvorenú inteligentnú multimediálnu analýzu pre Java, OpenIMAJ. Keď je blok inicializovaný, spustí sa samostatné vlákno na čítanie údajov z kamery. Vlákno počúva front príkazov. Akonáhle blok dostane príkaz prostredníctvom záchytného kolíka, nasníma jeden obrázok a doručí ho na kolík obrázku.

Obraz je potom odoslaný do bloku detekcie pohybu, ktorý vykonáva skutočnú detekciu obrazu. Blok detekcie pohybu tiež používa OpenIMAJ. Metóda v tomto bloku porovnáva dva obrázky a pri detekcii pohybu označí zmeny v obraze. Metóda je veľmi náročná na procesor a musí byť spustená v samostatnom vlákne. Akonáhle je detegovaný obrázok, je signalizovaný na pine motionDetected, ktorý spustí generovanie SMS správy.

Svetlomodré políčka sú všetky metódy Java špeciálne navrhnuté pre túto aplikáciu. Kliknutím na blok metódy sa otvorí editor Java.

Keď kliknete na stavebný blok, zobrazia sa podrobnosti o logike vo vnútri bloku. Ak sa napríklad pozriete do bloku ReadConfig, uvidíte, že je vyrobený kombináciou jedného existujúceho stavebného bloku a 4 metód Java.

Obmedzovač obmedzuje počet generovaných správ. Všimnite si P v pravom rohu stavebného bloku. Udáva, že môžete nastaviť miniterval, ako dlho musí aplikácia čakať, kým odošle novú SMS. Predvolené nastavenie je 300 000 ms, t.j. 5 minút. Ak chcete zmeniť hodnotu. Kliknite pravým tlačidlom myši na blok a zvoľte parametre a generiká.

Krok 4: Povoliť SMS

Povoliť SMS
Povoliť SMS

Táto alarmová aplikácia používa službu SMS ako Twilio. Ak chcete povoliť SMS, musíte upraviť súbor config/alarm-system.properties. Nájdete ho v zobrazení prieskumníka balíkov pod br.ref.motiondetection, pozri obrázok.

Tento súbor je ten istý súbor, ktorý sa používa v e -maile poplachového systému. Ak skôr máte e -mailové upozornenia, použijete túto aplikáciu a upravíte súbor pomocou svojich e -mailových poverení.

Ak službu Twilio nemáte, môžete aplikáciu upraviť tak, aby používala vašu vlastnú službu SMS. Máme tiež pripravený stavebný blok pre službu Clickatell. Alebo môžete pripojiť modem na odosielanie SMS.

Môžete nájsť stavebné bloky pre e -maily SMTP, AirVantage Cloud, IBM Bluemix a Xively.

Upozorňujeme, že na vykonanie zmien je potrebné najskôr vytvoriť vlastný projekt. Potom skopírujte/duplikujte aplikáciu do svojho novovytvoreného projektu. Ako sa to robí, môžete vidieť tu:

V prípade potreby ma neváhajte kontaktovať

Krok 5: Zostavte a spustite aplikáciu na prenosnom počítači

Zostavte a spustite aplikáciu na prenosnom počítači
Zostavte a spustite aplikáciu na prenosnom počítači

Pred spustením je potrebné aplikáciu vytvoriť a nasadiť na Raspberry Pi. To sa deje pomocou generátora kódu Reactive Blocks, ktorý zo štruktúry stavebných blokov vytvorí kompletný projekt Java. Kód, ktorý predstavuje diagramy, je synchronizačný kód, ktorý spracováva udalosti v správnom poradí a v správnom čase a zvyčajne predstavuje viac ako 60% riadkov kódu vo vašom programe. Pretože stavebné bloky sú presné matematické štruktúry, generátor môže transformovať túto logiku na veľmi účinný kód. Je to veľmi príjemná funkcia Reactive Blocks, pretože ručné písanie takého kódu je únavné a náročné. Na vygenerovanie kódu je potrebné urobiť toto:

Pravým tlačidlom myši kliknite na projekt SMS systému Alarm na karte Projekty a vyberte položku Štandardná verzia Java. Uistite sa, že informácie o protokolovaní sú INFO. Vygenerovaný projekt sa potom automaticky otvorí na karte Prieskumník balíkov. Podrobnosti nájdete na obrázku.

Krok 6: Spustite aplikáciu na počítači

Spustite aplikáciu na počítači
Spustite aplikáciu na počítači
Spustite aplikáciu na počítači
Spustite aplikáciu na počítači

Teraz môžete vygenerovaný projekt spustiť. V zobrazení Package Explorer v rámci vygenerovaného projektu _exe kliknite pravým tlačidlom myši na položku AlarmSystemSMS.launch, vyberte položku RunAs a potom vyberte položku AlarmSystemSMS.

Sledujte okno na obrazovke a zobrazenie konzoly. Malo by to vyzerať ako na druhom obrázku.

Ukončite aplikáciu zatvorením okna fotoaparátu.

V prípade aplikácie na odosielanie e -mailov: Ak sa zobrazí chyba overenia, uistite sa, že je pre váš e -mail povolené odosielanie SMTP. Pozrite si riešenie problémov v spodnej časti e-mailového tutoriálu:

Krok 7: Exportovať ako spustiteľný súbor JAR

Exportovať ako spustiteľný súbor JAR
Exportovať ako spustiteľný súbor JAR

Ak chcete aplikáciu spustiť na Raspberry Pi, ďalším krokom je export vygenerovaného projektu do spustiteľného súboru JAR. Ak to chcete urobiť, kliknite pravým tlačidlom myši na spustiteľný projekt v zobrazení Prieskumníka balíkov a zvoľte Exportovať. Potom vyberte možnosť Spustiteľný súbor JAR a kliknite na tlačidlo Ďalej. V nasledujúcom okne vyberte správnu konfiguráciu spustenia a cieľ exportu. V cieli exportu použite tlačidlo prehľadávania, aby ste mohli súbor.jar umiestniť na miesto, kde ho nájdete.

Krok 8: Pripravte si Raspberry Pi

  • Pripravte si kartu SD pomocou Raspbian (testovali sme pomocou NOOBS)
  • Vložte kartu SD do Raspberry pi
  • Pripojte fotoaparát
  • Pripojte sieť
  • Pripojte k Pi obrazovku a klávesnicu
  • Spustite Raspberry pi pripojením mikro USB k napájaniu.
  • Zistite IP adresu vášho Raspberry Pi. Po spustení váš Raspberry Pi nahlási niečo ako „Moja IP adresa je 10.10. 15.107“
  • Testovali sme s Raspbian (predvolené prihlásenie: pi, heslo: malina), ktorý štandardne obsahuje Javu.

Krok 9: Nainštalujte aplikáciu na svoj Raspberry Pi

Ak chcete skopírovať spustiteľný súbor jar z počítača na Rapsberry Pi, postupujte takto:

  • Otvorte na zariadení terminál
  • Prejdite do adresára, kde sa nachádza vygenerovaný súbor JAR
  • Zadajte príkaz scp alarmsystem.jar [email protected]: ~/
  • Budete požiadaní o kombináciu hesiel. „pi“je predvolené používateľské meno a „malina“predvolené heslo
  • Prejdite do adresára, kde sa nachádza konfiguračný súbor alarm_system.properties. Pre mňa je najľahšie manuálne skopírovať súbor z editora Eclipse do rovnakého adresára ako súbor jar.
  • Zadajte príkaz scp motiondetection.ini [email protected]: ~/

10.10.15.107 je adresa IP, nahraďte ju adresou IP vášho Raspberry Pi.

- Na kopírovanie do Pi môžete samozrejme použiť aj pamäťovú kartu

Krok 10: Spustite aplikáciu na svojom Raspberry Pi

Teraz ste pripravení spustiť aplikáciu.

  • Prihláste sa do Raspberry Pi buď priamo, alebo vzdialene prostredníctvom ssh.
  • Vytvorte nový konfiguračný adresár: mkdir config
  • Skontrolujte, či bol spustiteľný súbor JAR a.ini skopírované do Raspberry Pi
  • Presuňte súbor.ini do konfiguračného adresára: mv alarm_system.properties config/
  • Zadajte príkaz sudo java -jar alarmsystem.jar
  • Sledujte výstup na konzole
  • Ukončiť s ^C

Krok 11: Upravte svoju aplikáciu

Teraz môžete svoju aplikáciu ľubovoľne upravovať a rozširovať. Ak chcete rozšíriť importovaný systém ako tento poplašný systém, musíte si najskôr vytvoriť svoj vlastný projekt a duplikovať ho do svojho vlastného projektu.

Upozorňujeme, že na vykonanie zmien je potrebné najskôr vytvoriť vlastný projekt. Potom skopírujte/duplikujte aplikáciu do svojho novovytvoreného projektu. Ako sa to robí, môžete vidieť tu:

Sledujte trasu IoT Tuturial a získajte podrobné popisy toho, ako vytvárať alebo upravovať konkrétne aplikácie Reactive Blocks.

Odporúča: