Съдържание:
- Стъпка 1: Инсталирайте реактивни блокове
- Стъпка 2: Изтеглете приложението от библиотеките
- Стъпка 3: Приложението на най -високо ниво
- Стъпка 4: Активирайте SMS
- Стъпка 5: Създайте и стартирайте приложението на вашия лаптоп
- Стъпка 6: Стартирайте приложението на вашия компютър
- Стъпка 7: Експортирайте като стартиращ JAR файл
- Стъпка 8: Подгответе вашия Raspberry Pi
- Стъпка 9: Разгърнете приложението на вашия Raspberry Pi
- Стъпка 10: Стартирайте приложението на вашия Raspberry Pi
- Стъпка 11: Променете приложението си
Видео: Алармена система за откриване на движение: 11 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Забележка! Reactive Blocks вече не е наличен за изтегляне. Основна USB камера може да се използва за откриване на движение в една стая. В следващите стъпки ще ви покажем как можете да използвате реактивни блокове за програмиране на готово за изпълнение Java приложение, което изпраща SMS или имейл при откриване на движение. С Reactive Blocks правите Java SE приложения, така че аларменото приложение може да бъде внедрено на всяка машина с Java SE и свързана или интегрирана камера. Приложението лесно се разгръща на Pi, тъй като изданието Raspbian има предварително инсталиран Oracle Java..
Това е, от което се нуждаете:
- Raspberry Pi Model B+ с Raspbian OS
- Стандартна USB камера
- Ethernet кабел
- Екран и клавиатура за Pi
- Windows или MAC компютър с JDK
- Забележка! Reactive Blocks вече не е наличен за изтегляне. Ще ви трябват реактивни блокове, приставка Eclipse, за да програмирате приложението.
Това приложение за аларма е една от няколкото модифицируеми примерни системи, които са достъпни, след като инсталирате реактивни блокове. Приложението е готово да изтече от кутията и няма да ви трябват никакви умения за програмиране на Java, за да завършите урока. За да създадете свои собствени приложения за реактивни блокове и градивни елементи, трябва да сте опитен Java програмист. При изграждането на по -сложни приложения с няколко сензора и задвижващи механизми, реактивните блокове улесняват правилната логика и потока от данни. Reactive Blocks е безплатен за проекти с отворен код.
Стъпка 1: Инсталирайте реактивни блокове
Реактивните блокове са прекратени
Стъпка 2: Изтеглете приложението от библиотеките
Уверете се, че сте отворили перспективата за реактивни блокове и че сте в изгледа Блокове. От изгледа Блокове изберете бутона за импортиране и изберете Референтни приложения. Изберете проекта за откриване на движение. В този момент ще бъдете помолени да се регистрирате с google ID. Това ще ви даде незабавен достъп до библиотеките на градивните блокове и модифицираните системи и уроци.
Проектът за откриване на движение, който сте изтеглили, включва три приложения, SMS на алармената система, имейл на алармената система и тестово приложение Тестовото откриване на движение. В този урок ще ви преведем чрез SMS на алармената система. Ако предпочитате да изпращате имейл, можете да направите същите стъпки с имейла на алармената система
Стъпка 3: Приложението на най -високо ниво
Тази стъпка дава обяснение на приложението. Първата снимка показва диаграмата как изглежда пълното приложение на най -високо ниво. Състои се от 7 градивни блока; 5 стандартни градивни блока от библиотеките и 2 блока по поръчка, направени за това приложение.
Стандартните блокове от библиотеката на IoT са:
- Граббер, хваща изображения от USB камерата
- Откриване на движение, извършва действителното откриване на изображение
- Периодичен таймер, стартира с точни часови марки и изпраща сигнал на щифта за отметка всеки период.
- Buffer Eager, автоматично изтласква първия елемент от опашката. Буферите гарантират, че само едно съобщение се изпраща до блока за изпращане на SMS, тъй като той може да обработва само едно съобщение наведнъж.
- SMS Изпратете буферирано, изпраща SMS чрез услугата Twilio. Елементите, които трябва да бъдат изпратени, се буферират, за да се гарантира, че едновременно се изпраща само едно съобщение.
- Ограничител, за да се избегне твърде много SMS при откриване на нарушител.
- Прочетете файла със свойства на Java, чете конфигурационни данни от входния файл
- Преглед, преглед на изображение на екрана.
Блокът Periodic Timer работи като системен двигател. Той периодично ще издава отметка, която изпраща сигнал към блока Grabber чрез захващащия щифт. Блокът Grabber използва Open Intelligent Multimedia Analysis за Java, OpenIMAJ. Когато блокът се инициализира, се стартира отделна нишка за четене на данни от камерата. Потокът слуша опашка от команди. Когато блокът получи команда чрез захващащия щифт, той ще направи една снимка и ще я достави на щифта за изображения.
След това изображението се предава на блока за откриване на движение, който извършва откриването на действителното изображение. Блокът за откриване на движение също използва OpenIMAJ. Метод в този блок сравнява две изображения и ще маркира промените в изображението, когато се открие движение. Методът е много интензивен за процесора и трябва да се изпълнява в отделна нишка. Когато се открие изображение, то се сигнализира на pinDetected, което ще задейства генерирането на SMS съобщение.
Светлосините кутии са всички Java методи, специално създадени за това приложение. Щракването върху блок с методи отваря редактора на Java.
Когато щракнете върху градивен елемент, можете да видите подробностите за логиката вътре в блока. Ако например погледнете вътре в блока ReadConfig, ще видите, че е направен чрез комбиниране на един съществуващ градивен елемент и 4 Java метода.
Ограничителят поставя ограничение за количеството генерирани съобщения. Забележете P в десния ъгъл на градивния блок. Това показва, че можете да зададете минималния интервал за това колко дълго трябва да чака приложението, преди да изпрати нов SMS. Настройката по подразбиране е 300000ms, т.е. 5 минути. За да промените стойността. Щракнете с десния бутон върху блока и изберете параметри и генерични данни.
Стъпка 4: Активирайте SMS
Това приложение за аларма използва Twilio като SMS услуга. За да активирате SMS, трябва да редактирате файла config/alarm-system.properties. Можете да го намерите в изгледа на изследователя на пакети под br.ref.motiondetection, вижте снимката.
Този файл е същият файл, използван в имейла на алармената система. Ако предпочитате известия по имейл, ще използвате това приложение и ще редактирате файла с вашите идентификационни данни за имейл.
Ако нямате услугата Twilio, можете да промените приложението, така че да използва вашата собствена SMS услуга. Също така имаме готов за използване градивен елемент за услугата Clickatell. Или можете да прикачите модем за изпращане на SMS.
Можете да намерите градивни елементи за SMTP имейл, AirVantage Cloud, IBM Bluemix и Xively, за да назовем само няколко.
Имайте предвид, че за да направите промени, първо трябва да направите свой собствен проект. След това копирайте/дублирайте приложението във вашия новосъздаден проект. Можете да видите как се прави това тук:
Не се колебайте да се свържете с мен, ако имате нужда от помощ
Стъпка 5: Създайте и стартирайте приложението на вашия лаптоп
Трябва да създадете приложението, преди да го стартирате, и да го разгърнете в Raspberry Pi. Това става с помощта на генератора на код на Reactive Blocks, който създава цялостен Java проект от структурата на градивните блокове. Кодът, който представлява диаграмите, е кодът за синхронизация, който обработва събития в правилния ред и в точното време и обикновено представлява повече от 60% от редовете на кода във вашата програма. Тъй като градивните елементи са прецизни математически структури, генераторът може да трансформира тази логика в много ефективен код. Това е много хубава функция за реактивни блокове, защото писането на такъв код ръчно е досадно и трудно. За да генерирате кода, това е всичко, което трябва да направите:
Щракнете с десния бутон върху SMS на алармената система на проекта в раздела Проекти и изберете Стандартно издание на Java. Уверете се, че информацията за регистрация е INFO. След това генерираният проект ще се отвори автоматично в раздела Package Explorer. Вижте фигурата за подробности.
Стъпка 6: Стартирайте приложението на вашия компютър
Сега можете да изпълните генерирания проект. В изгледа на Package Explorer под генерирания проект _exe щракнете с десния бутон върху AlarmSystemSMS.launch и изберете RunAs и след това изберете AlarmSystemSMS.
Гледайте прозореца на екрана и изгледа на конзолата. Трябва да изглежда като втората снимка.
Прекратете приложението, като затворите прозореца на камерата.
За приложението за изпращане на имейл: Ако получите грешка при удостоверяване, уверете се, че изпращането на SMTP е разрешено за вашия имейл. Вижте отстраняване на неизправности в долната част на урока по имейл:
Стъпка 7: Експортирайте като стартиращ JAR файл
Ако искате да стартирате приложението на Raspberry Pi, следващата стъпка е да експортирате генерирания проект в работещ JAR файл. За да направите това, щракнете с десния бутон върху изпълнимия проект в изгледа на изследователя на пакети и изберете експортиране. След това изберете опцията Runnable JAR файл и натиснете следващия. В следния прозорец изберете правилната конфигурация за стартиране и дестинация за експортиране. В дестинацията за експортиране използвайте бутона за преглед, за да можете да поставите.jar файла на място, където можете да го намерите.
Стъпка 8: Подгответе вашия Raspberry Pi
- Подгответе SD картата с Raspbian (тествахме с помощта на NOOBS)
- Поставете SD картата в Raspberry pi
- Свържете камерата
- Свържете мрежата
- Свържете екран и клавиатура към Pi
- Стартирайте Raspberry pi, като свържете микро USB за захранване.
- Разберете IP адреса на вашия Raspberry Pi. Когато се стартира, вашият Raspberry Pi ще докладва нещо като „Моят IP адрес е 10.10. 15.107“
- Тествахме с Raspbian (вход по подразбиране: pi, парола: малинка), който по подразбиране включва Java.
Стъпка 9: Разгърнете приложението на вашия Raspberry Pi
За да копирате стартиращия jar файл от компютъра си в Rapsberry Pi, изпълнете следните стъпки:
- Отворете терминал на вашата машина
- Отидете в директорията, където се намира генерираният JAR файл
- Въведете scp alarmsystem.jar [email protected]: ~/
- Ще бъдете помолени за комбинацията от пароли. "pi" е потребителското име по подразбиране, а "raspberry" - паролата по подразбиране
- Отидете в директорията, където се намира конфигурационният файл alarm_system.properties. Най -лесно за мен е да копирам ръчно файла от редактора на Eclipse в същата директория като jar файла.
- Въведете scp motiondetection.ini [email protected]: ~/
10.10.15.107 е IP адресът, заменете го с IP адреса на вашия Raspberry Pi.
- Разбира се, можете също да използвате памет, за да я копирате в Pi
Стъпка 10: Стартирайте приложението на вашия Raspberry Pi
Вече сте готови да стартирате приложението.
- Влезте в Raspberry Pi директно или отдалечено чрез ssh.
- Направете нова конфигурационна директория: mkdir config
- Проверете дали стартиращият JAR файл и.ini са копирани в Raspberry Pi
- Преместете.ini файла в конфигурационната директория: mv alarm_system.properties config/
- Въведете sudo java -jar alarmsystem.jar
- Гледайте изхода на конзолата
- Прекратете с ^C
Стъпка 11: Променете приложението си
Вече можете да променяте и разширявате приложението си, както желаете. Ако искате да разширите внесена система като тази алармена система, първо трябва да направите свой собствен проект и да дублирате алармената система в свой собствен проект.
Имайте предвид, че за да направите промени, първо трябва да направите свой собствен проект. След това копирайте/дублирайте приложението във вашия новосъздаден проект. Можете да видите как се прави това тук:
Следвайте пътеката на IoT Tuturial, за да получите стъпка по стъпка описания как да създавате или променяте конкретни приложения за реактивни блокове.
Препоръчано:
Направи си сам алармена система за домашна автоматизация!: 5 стъпки (със снимки)
Направи си алармена система за домашна автоматизация!: В този проект ще ви покажа как да използвате софтуера Home Assistant, за да създадете алармена система за нарушители за вашия дом. По принцип системата ще открие дали вратата се отваря без разрешение и след това ще изпрати известие
SMS алармена система за откриване на движение: 5 стъпки (със снимки)
SMS алармена система за откриване на движение: В този проект ще комбинирам евтин PIR сензор за движение с TC35 GSM модул, за да изградя алармена система, която ви изпраща " ИНТРУДЕРНО ПРЕДУПРЕЖДЕНИЕ " SMS, когато някой се опита да открадне вашите неща. Да започваме
Как да направите интелигентна алармена система за откриване на наводнения с помощта на Raspberry Pi и частици аргон: 6 стъпки
Как да направите интелигентна алармена система за откриване на наводнения с помощта на Raspberry Pi и частици аргон: Наличието на стандартни сензори за наводнение е чудесно за предотвратяване на големи щети по дома или работното ви място. Но това затруднява, ако не сте вкъщи, да присъствате на алармата. Разбира се можете да си купите тези умни Тази алармена система за наводнение открива всякаква течност и задейства аларма
Алармена система за откриване на газ Arduino: 6 стъпки
Алармена система за откриване на газ Arduino: Здравейте, всички! В момента ще обясня как да се изгради алармена система за откриване на газ Arduino в tinkercad. Тази верига използва сензора за газ, за да открие дали в близост има пожар, дим или изтичане на газ. Използвайки LCD и алармата, тази верига също
Как да изградим система за откриване на движение с Arduino: 7 стъпки
Как да изградим система за откриване на движение с Arduino: Изградете брояч за производство на движение и присъствие, използвайки Feather HUZZAH, програмиран с Arduino и задвижван от Ubidots. Ефективното откриване на физическо движение и присъствие в Smart Homes и Smart Manufacturing може да бъде много полезно в приложения, вариращи от