สารบัญ:

การรักษาความปลอดภัยภายในบ้านด้วย Raspberry Pi: 6 ขั้นตอน (พร้อมรูปภาพ)
การรักษาความปลอดภัยภายในบ้านด้วย Raspberry Pi: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: การรักษาความปลอดภัยภายในบ้านด้วย Raspberry Pi: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: การรักษาความปลอดภัยภายในบ้านด้วย Raspberry Pi: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: การทำงานของชุดอุปกรณ์รักษาความปลอดภัยประตูบ้านด้วยบอร์ด Raspberry pi 2024, กรกฎาคม
Anonim
การรักษาความปลอดภัยภายในบ้านด้วย Raspberry Pi
การรักษาความปลอดภัยภายในบ้านด้วย Raspberry Pi

นั่นเป็นวิธีแก้ปัญหาง่ายๆ ที่ทำให้คุณรู้สึกผ่อนคลายมากขึ้นเมื่อคุณออกจากอพาร์ตเมนต์ รับอีเมลพร้อมรูปภาพที่พักของคุณที่แขกที่ไม่ต้องการมาเยี่ยม วางอาวุธและปลดอาวุธระบบรักษาความปลอดภัยของคุณด้วยวิธีที่ง่ายและน่าเชื่อถือที่สุด (กดสวิตช์แล้วเข้าหา แท็ก RFID) และแทบไม่มีค่าใช้จ่ายเลย - ฉันจ่ายเพิ่มเป็นรายเดือนสำหรับการเข้าถึงอินเทอร์เน็ต คุณต้องการโคลนของ Raspberry Pi ชิ้นส่วนอิเล็กทรอนิกส์สองสามชิ้น และ… การเข้าถึงอินเทอร์เน็ต

โปรดทราบว่า Zoneminder ไม่ได้ใช้ในคู่มือนี้ หากคุณต้องการใช้ Zoneminder ให้ดูที่นี่:

sites.google.com/site/boguszjelinski/home/…

ขั้นตอนที่ 1: ฮาร์ดแวร์ที่คุณต้องการ

ฮาร์ดแวร์ที่คุณต้องการ
ฮาร์ดแวร์ที่คุณต้องการ

1. Raspberry Pi หรือโคลนของมัน ดูเพิ่มเติม:

www.instructables.com/id/Home-Security-With-Orange-Pi/

ราคาถูกที่สุดซึ่งจะช่วยให้คุณเข้าถึงเครือข่ายและจำนวนกล้องที่คุณต้องการ อย่าลืมซื้อแหล่งจ่ายไฟที่เหมาะสมพร้อมขั้วต่อที่เหมาะสม

2. เครื่องอ่าน RFID พร้อมเสาอากาศ

3. เซ็นเซอร์ PIR

4. สวิตช์ชั่วขณะซึ่งเชื่อมต่อวงจรเฉพาะเมื่อคุณกดที่มัน (พร้อมสปริง?)

5. ไฟ LED สองดวง - สีเขียวและสีแดง หรือนำ RGB หนึ่งอัน

6. ตัวต้านทาน 1k สองตัว

7. กล้อง USB

8. สาย UTP เพื่อเชื่อมต่อเซ็นเซอร์ PIR, สวิตช์, ไฟ LED และเครื่องอ่าน RFID (ฉันจัดการเพื่อเชื่อมต่อทั้งหมดด้วยสายเคเบิลเดียวที่มี 8 สายหรือ 4 คู่หากต้องการ)

9. กล่องเล็ก ๆ หรือสองกล่องถ้าคุณต้องการปกป้องชิ้นส่วนอิเล็กทรอนิกส์ของคุณหรือไม่ต้องการคุยโวเกี่ยวกับทักษะการบัดกรีของคุณ

10. รีเลย์เพื่อเปิดแหล่งกำเนิดแสง - สำหรับเหตุการณ์ในเวลากลางคืน

ขั้นตอนที่ 2: ติดตั้ง Postfix

หลังจากติดตั้ง Linux แล้ว คุณจะต้องติดตั้งส่วนประกอบซอฟต์แวร์สองสามตัวเพื่อเรียกใช้ตัวอย่างข้อมูลของฉัน ก่อนอื่นคุณต้องติดตั้ง Postfix หากคุณต้องการส่งอีเมล:

1. apt-get install postfix (ระบบจะขอให้คุณเลือกเช่น "ในเครื่องเท่านั้น")

2. ไปที่ /etc/postfix และสร้างไฟล์ sasl_passwd และใส่หนึ่งบรรทัดเข้าไป:

[smtp.gmail.com]:587 john.smith:pass1234

แทนที่ชื่อผู้ใช้และรหัสผ่านด้วยข้อมูลประจำตัวของคุณ คุณสังเกตเห็นว่าเป็นบรรทัดสำหรับบัญชี Google Mail บัญชีนี้ใช้เพื่อส่งการแจ้งเตือน (ส่งจาก)

3. แฮช postmap:/etc/postfix/sasl_passwd

4. rm /etc/postfix/sasl_passwd

5. แทนที่เนื้อหาของ /etc/postfix/main.cf ด้วยบรรทัดต่อไปนี้ (คุณอาจต้องการปรับชื่อโฮสต์):

smtpd_banner = $myhostname ESMTP $mail_name (อูบุนตู)

biff = ไม่

append_dot_mydomain = ไม่

readme_directory = ไม่

smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

smtp_tls_security_level = อาจ

smtp_use_tls = ใช่

smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

myhostname = ราสเบอร์รี่ pi

myorigin = $ชื่อโฮสต์ของฉัน

alias_maps = แฮช:/etc/aliases

alias_database = แฮช:/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

ตัวคั่นผู้รับ = +

inet_interfaces = ทั้งหมด

smtp_sasl_auth_enable = ใช่

smtp_sasl_password_maps = แฮช:/etc/postfix/sasl_passwd

smtp_sasl_security_options =

smtp_sasl_tls_security_options = ไม่ระบุชื่อ

6. /etc/init.d/postfix restart

7. คุณอาจทดสอบการกำหนดค่าของ Postfix โดย sendmail [email protected] เนื้อหาการทดสอบ

ขั้นตอนที่ 3: เตรียมซอฟต์แวร์

สำหรับ Raspberry Pi B+ และ Raspbian Jessie ของฉัน ฉันต้องทำตามขั้นตอนเพิ่มเติมต่อไปนี้:

1. apt-get install python-setuptools

2. easy_install pip

3. pip ติดตั้ง pyserial

4. apt-get ติดตั้ง mailutils

5. ปิดใช้งานซีเรียลที่ใช้โดยการบันทึกคอนโซล ฉันพบวิธีต่างๆ สองสามวิธี:

a) raspi-config → ตัวเลือกการเชื่อมต่อ → ซีเรียล → เชลล์การเข้าสู่ระบบไม่สามารถเข้าถึงได้ผ่านซีเรียล

b) การลบ console=serial0, 115200 ออกจากไฟล์ /boot/cmdline.txt

c) systemctl หยุด [email protected]

systemctl ปิดการใช้งาน [email protected]

6. apt-get ติดตั้ง python-opencv

7. apt-get ติดตั้ง imagemagick

ขั้นตอนที่ 4: ต่อสายและเรียกใช้

วางสายแล้วเรียกใช้
วางสายแล้วเรียกใช้

เชื่อมต่อชิ้นส่วนของคุณตรงตามที่แสดงในภาพ หากคุณไม่ทำเช่นนั้น คุณจะต้องทำการเปลี่ยนแปลงในแหล่งที่มาเพื่อให้สอดคล้องกับหมายเลขพอร์ตที่เปลี่ยนแปลง

คำเตือน! RPI IO ไม่ยอมรับ 5V คุณควรใช้เช่น ตัวแปลงลอจิก TTL เพื่อลดแรงดันไฟฟ้าที่มาจากเซ็นเซอร์ RFID หรือ PIR ตัวเลือกของฉันคือ 74HC4050

ตกลง ตามทฤษฎีแล้ว ตอนนี้คุณสามารถเรียกใช้ rpi-alarm.py ด้วย:

nohup หลาม rpi-alarm.py &

แต่ก่อนหน้านั้น คุณต้องแก้ไขรหัสและเปลี่ยนรหัสเป็นแท็ก RFID และที่อยู่อีเมลของคุณด้วย คุณสามารถรับรหัสได้ที่นี่:

github.com/boguszjelinski/rpi-alarm

การวิ่งครั้งแรกจะเริ่มต้นด้วยโหมดการเรียนรู้พร้อมไฟ LED สีเขียวและสีแดงกะพริบ จุดมุ่งหมายคือการสร้างไฟล์ rfid.txt ที่มีรหัส RFID - เข้าใกล้แท็กของคุณกับเสาอากาศ สองสามครั้งสำหรับแต่ละอัน และกดสวิตช์ตราบเท่าที่คุณได้รับไฟเขียวที่ยาวขึ้น จากนั้นแก้ไขไฟล์เพื่อดูว่าไฟล์ไม่เสียหายหรือไม่ โดยควรมีบรรทัดให้มากที่สุดเท่าที่คุณมีแท็ก โดยแต่ละไฟล์มีอักขระ 10 ตัว คุณสามารถสร้างไฟล์ได้ด้วยตนเอง แน่นอน โหมดการเรียนรู้จะถูกข้ามไป โปรดทราบว่าการกดสวิตช์ค้างไว้อาจทำให้ระบบของคุณติดอาวุธได้ เนื่องจากหลังจากโหมดการเรียนรู้เสร็จสิ้น ระบบกำลังรอที่จะติดอาวุธ โปรดดู "สัญญาณที่ใช้งานอยู่"

ขั้นตอนที่ 5: สัญญาณในการใช้งาน

สัญญาณในการใช้งาน
สัญญาณในการใช้งาน

โค้ดเวอร์ชันที่อัปเดตยังมี "โหมดการเรียนรู้" ด้วย - ไฟ LED สีเขียวและสีแดงจะกะพริบสลับกัน สัญญาณสีเขียวที่ยาวขึ้น (หลังจากกดสวิตช์) เป็นการยืนยันว่าโหมดเสร็จสมบูรณ์

ขั้นตอนที่ 6: ความคิดเห็นเล็กน้อยในตอนท้าย

ความคิดเห็นเล็กน้อยเกี่ยวกับซอร์สโค้ดหรือเพียงคำแนะนำให้คุณเขียนของคุณเอง:

- LED และเซ็นเซอร์ PIR ได้รับการกำหนดค่าโดยมาตรฐาน GPIO.setup GPIO. OUT และ GPIO. IN ตามลำดับ

- สำหรับการเดินสายสวิตช์นั้น คุณต้องมี GPIO.setup (?, GPIO. IN, pull_up_down=GPIO. PUD_DOWN)

- เครื่องอ่าน RFID เชื่อมต่อกับ GPIO15 ซึ่งเป็น RX ของบอร์ด สามารถอ่านได้ด้วย

ser = serial. Serial('/dev/ttyAMA0', 9600, timeout=0.1) และ ser.read(12)

ใช้งานได้กับ Raspbian Jessie บน RPI 1 แต่อาจเปลี่ยนเป็น /dev/serial0 ด้วยการแจกแจงแบบอื่น

- ฉันเคยใช้สตรีมเมอร์เพื่อถ่ายโอนรูปภาพจากกล้อง USB:

streamer -c /dev/video0 -s 640x480 -o camdmp.jpg

และ streamer -c /dev/video1 -s 640x480 -o camdmp2-j.webp

แต่มันพังบน Orange Pi ดังนั้นฉันจึงใช้ CV ในการติดตั้งสตรีมเมอร์ให้พิมพ์ดังนี้:

apt-get ติดตั้ง streamer

- เขียนข้อความปลุกที่น่าตกใจลงในไฟล์ alarmmsg.txt และส่งอีเมลด้วย:

mail -s "Alarm" -t [email protected] -A camdmp-j.webp

- เปลี่ยนที่อยู่อีเมลของคุณในรหัส (บรรทัด 51)

มีความสุข!

แนะนำ: