Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
To je jednostavno rješenje koje vas može opustiti pri izlasku iz stana - primajte e -poruke sa slikama vaše nekretnine koje posjećuju neželjeni gosti, aktivirajte i razoružajte svoj sigurnosni sistem na najlakši i najpouzdaniji način (pritisnite prekidač i priđite RFID oznaka). I ne košta gotovo ništa - mjesečno plaćam više za pristup internetu. Potreban vam je klon Raspberry Pi, nekoliko elektroničkih dijelova i … pristup internetu.
Imajte na umu da se Zoneminder ne koristi u ovom vodiču. Ako želite koristiti Zoneminder, pogledajte ovdje:
sites.google.com/site/boguszjelinski/home/…
Korak 1: Potreban vam je hardver
1. Raspberry Pi ili njegov klon, pogledajte također:
www.instructables.com/id/Home-Security-With-Orange-Pi/
Najjeftiniji koji će vam omogućiti pristup mreži i broj kamera koje su vam potrebne. Ne zaboravite kupiti odgovarajuće napajanje s odgovarajućim priključkom
2. RFID čitač sa antenom
3. PIR senzori
4. trenutni prekidač koji povezuje krug samo kada ga pritisnete (s oprugom?)
5. dvije LED diode - zelena i crvena. Ili jedan RGB LED.
6. dva 1k otpornika
7. USB kamere
8. UTP kabel za povezivanje PIR senzora, prekidača, LED dioda i RFID čitača (sve sam uspio spojiti jednim kabelom sa 8 žica ili 4 para ako želite)
9. mala ili dvije kutije ako želite zaštititi svoje elektroničke dijelove ili se ne želite hvaliti svojim vještinama lemljenja.
10. relej za uključivanje izvora svjetla - za incidente tokom noći
Korak 2: Instalirajte Postfix
Nakon što ste instalirali Linux, morat ćete instalirati nekoliko softverskih komponenti za pokretanje mog primjera isječka. Prvo morate instalirati Postfix ako želite slati e -poštu:
1. apt-get install postfix (od vas će se tražiti da odaberete na primjer 'samo lokalno')
2. idite na /etc /postfix i kreirajte datoteku sasl_passwd i u nju unesite jedan red:
[smtp.gmail.com]: 587 john.smith: pass1234
Zamijenite korisničko ime i lozinku svojim vjerodajnicama; primijetili ste da je to linija za račun Google pošte. Ovaj račun se koristi za slanje obavijesti o alarmu (poslano od).
3. hasma postmape:/etc/postfix/sasl_passwd
4. rm/etc/postfix/sasl_passwd
5. zamijenite sadržaj /etc/postfix/main.cf sljedećim redovima (možda ćete htjeti prilagoditi ime hosta):
smtpd_banner = $ myhostname ESMTP $ mail_name (Ubuntu)
biff = ne
append_dot_mydomain = ne
readme_directory = ne
smtp_tls_session_cache_database = btree: $ {data_directory}/smtp_scache
smtp_tls_security_level = može
smtp_use_tls = da
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
myhostname = raspberrypi
myorigin = $ myhostname
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = raspberrypi, localhost.localdomain, localhost
relayhost = [smtp.gmail.com]: 587
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [:: 1]/128
mailbox_size_limit = 0
graničnik primaoca = +
inet_interfaces = sve
smtp_sasl_auth_enable = da
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtp_sasl_tls_security_options = noanonymous
6. /etc/init.d/postfix ponovno pokretanje
7. možete testirati konfiguraciju Postfix -a putem sendmail [email protected] testnog sadržaja.
Korak 3: Pripremite softver
Za svoje Raspberry Pi B+ i Raspbian Jessie morao sam proći kroz sljedeće dodatne korake:
1. apt-get install python-setuptools
2. easy_install pip
3. pip install pyserial
4. apt-get install mailutils
5. onemogućite serijsku upotrebu zapisivanjem konzole. Pronašao sam nekoliko različitih načina:
a) raspi-config → Opcije sučelja → Serijski → ljuska za prijavu NIJE dostupna preko serijske jedinice
b) uklanjanje konzole = serial0, 115200 iz datoteke /boot/cmdline.txt
c) systemctl stop [email protected]
systemctl onemogućiti [email protected]
6. apt-get install python-opencv
7. apt-get install imagemagick
Korak 4: Povežite ga i pokrenite
Spojite svoje dijelove tačno onako kako je prikazano na slici. Ako to ne učinite, morat ćete promijeniti izvor kako bi odražavali promijenjene brojeve portova.
Upozorenje! RPI IO ne prihvaćaju 5V, trebali biste koristiti npr. TTL logički pretvarač za smanjenje napona koji dolazi od RFID ili PIR senzora. Moj izbor je bio 74HC4050.
U redu, teoretski biste sada mogli pokrenuti rpi-alarm.py sa:
nohup python rpi-alarm.py &
Ali prije toga morate urediti kôd i promijeniti ID -ove u svoje RFID oznake i adresu e -pošte. Kôd možete dobiti ovdje:
github.com/boguszjelinski/rpi-alarm
Prva vožnja počet će s načinom učenja sa zelenom i crvenom LED diodom koja treperi. Njegov cilj je stvoriti datoteku rfid.txt s RFID kodovima - približite svoje oznake anteni, nekoliko puta za svaku, i pritisnite prekidač sve dok dobijete duže zeleno svjetlo. Zatim uredite datoteku da vidite je li oštećena - trebala bi sadržavati onoliko redaka koliko imate oznaka, svaki po 10 znakova. Datoteku možete stvoriti ručno, naravno, način učenja će biti preskočen. Imajte na umu da vaš dugi pritisak na prekidač može dovesti do aktiviranja vašeg sistema jer nakon završetka načina učenja sistem čeka da se aktivira - pogledajte "signali u upotrebi".
Korak 5: Signali u upotrebi
Ažurirana verzija koda sadrži i "način učenja" - zelena i crvena dioda naizmjenično trepere. Duži zeleni signal (nakon pritiska na prekidač) potvrđuje završetak moda.
Korak 6: Nekoliko komentara na kraju
Nekoliko komentara na izvorni kod ili samo savjeti da napišete vlastiti:
- LED i PIR senzori konfigurirani su standardnim GPIO.setup GPIO. OUT i GPIO. IN respektivno
- za to ožičenje prekidača trebate GPIO.setup (?, GPIO. IN, pull_up_down = GPIO. PUD_DOWN)
- RFID čitač je spojen na GPIO15 koji je RX ploče, s tim se može čitati
ser = serial. Serial ('/dev/ttyAMA0', 9600, timeout = 0.1) i ser.read (12)
Ovo radi na Raspbian Jessieju na RPI 1, ali bi se moglo promijeniti u /dev /serial0 s drugim distribucijama.
- Prije sam koristio streamer za izbacivanje slika s USB kamera:
streamer -c /dev /video0 -s 640x480 -o camdmp.jpg
i streamer -c /dev /video1 -s 640x480 -o camdmp2-j.webp
ali srušio se na Orange Pi, pa sada koristim CV. Za instaliranje streamera upišite ovo:
apt-get install streamer
- upišite neki alarmantan tekst za buđenje u datoteku alarmmsg.txt i pošaljite e-poruku sa:
mail -s "Alarm" -t [email protected] -A camdmp-j.webp
- promijenite svoju adresu e -pošte u kodu (red 51)
Zabavi se!