Სარჩევი:
- მარაგები
- ნაბიჯი 1: ნაბიჯი 1: თავის მოწყვეტა
- ნაბიჯი 2: ნაბიჯი 2: დაამატეთ ჭკვიანი
- ნაბიჯი 3: ნაბიჯი 3: შეავსეთ იგი
- ნაბიჯი 4: ნაბიჯი 4: დააინსტალირეთ Pi
- ნაბიჯი 5: ნაბიჯი 5: თავის გადატანა
- ნაბიჯი 6: ნაბიჯი 6: მიღების Hoot
- ნაბიჯი 7: ნაბიჯი 7: გაუშვით ვიდეო Pi- დან
- ნაბიჯი 8: ნაბიჯი 8: სხეულის გამოვლენა
- ნაბიჯი 9: ნაბიჯი 9: Zombie შეტყობინებების გაგზავნა
- ნაბიჯი 10: რა სიგიჟეა
ვიდეო: Zombie Detecting Smart Security Owl (ღრმა სწავლა): 10 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:15
გამარჯობა ყველას, მოგესალმებით T3chFlicks! ჰელოუინის ამ სახელმძღვანელოში ჩვენ გაჩვენებთ, თუ როგორ უნდა მოვახდინოთ სუპერ საშინელი ირონია მსოფლიო საოჯახო კლასიკაში: უსაფრთხოების კამერა.
Როგორ?! ჩვენ გავაკეთეთ ღამის ხედვის ბუ, რომელიც იყენებს სურათის დამუშავებას ადამიანების თვალყურის დევნისთვის. ოჰ, და ის ყვირის, ისევე როგორც ნამდვილი!
ჩვენ ძალიან აღფრთოვანებული ვიყავით ამ პროექტით და ველოდით ამის გაკეთებას მას შემდეგ, რაც ახალი Raspberry Pi 4 დაეცა. მას აქვს 4 გიგაბაიტიანი ოპერატიული მეხსიერება, რომელიც კარს უღებს უამრავ საინტერესო შესაძლებლობას, მათ შორის რეალურ დროში ღრმა სწავლის მოდელებით სურათების დამუშავების ჩათვლით.
თუ გსურთ თვალი ადევნოთ ჰელოუინზე ზომბების მოახლოებას, ან უბრალოდ შეამოწმოთ თქვენი ბაღი წლის დანარჩენ წლებში, ეს თქვენთვისაა. უსაფრთხოება არ უნდა იყოს მოსაწყენი რომ იყოს ეფექტური!
მარაგები
ამ მშენებლობისთვის დაგჭირდებათ:
- ჟოლო Pi 4 (4 GB Ram) ამაზონი
- ღამის ხედვის კამერა ამაზონი
- მიკრო სერვო ამაზონი
- ყალბი ბუ ამაზონი
- წებო ამაზონი
- ხატავს ამაზონს
- ხრახნიან ამაზონს
- USB სპიკერი ამაზონი
- დიდი (5v+) პორტატული კვების წყარო ამაზონი
- 3D პრინტერი ამაზონი
ნაბიჯი 1: ნაბიჯი 1: თავის მოწყვეტა
ა ამოიღეთ თავი ბუდან (ზოგჯერ უბრალოდ სასტიკი უნდა იყოთ) ძლიერად გაიწევთ მის თავზე, სადაც ის მიმაგრებულია ზამბარასთან.
ბ ბუ თავი აკავშირებს სხეულს ცილინდრით, რომელიც ზის დიდი ზამბარის თავზე. ამოიღეთ ეს ცილინდრი ხრახნის ამოღებით.
გ ცილინდრი, რომელიც თქვენ ამოიღეთ, შედგება ორი ნაწილისგან, პლასტმასის ჭიქისა და საკისრისგან, რომელიც ზის მის შიგნით. ამოიღეთ საყრდენი ცილინდრიდან ხრახნიანი (ან მსგავსი ხელსაწყოს) გამოყენებით.
დ ხრახნის გამოყენებით, რომელმაც ცილინდრი გაზაფხულთან დააკავშირა, მიამაგრეთ სერვერი ცილინდრზე.
ე ამოიღეთ ზამბარა სამი ხრახნის მოხსნით, რომელიც მას სხეულზე ამყარებს.
ვ ბუს სხეულის ზედა ნაწილში გააკეთეთ ხვრელი, რომელიც საკმარისად დიდია, რათა მოათავსოს ზოგიერთი მავთული და კამერის კაბელი. ამისათვის ჩვენ გამოვიყენეთ საბურღი და ხრახნიანი არალეგალური კომბინაცია.
ნაბიჯი 2: ნაბიჯი 2: დაამატეთ ჭკვიანი
ა 3D ბეჭდვა კამერის ქეისი და შეღებეთ იგი ბუის შესატყვისად - ჩვენ ვიყენეთ რამდენიმე იაფი აკრილის საღებავი. ფერწერა არ არის სასიცოცხლო ნაბიჯი, მაგრამ ის მკვეთრად აუმჯობესებს მთლიან სახეს!
ბ ბუ თავი თავდაყირა დაატრიალეთ კამერის კორპუსის თავში მისი შიდა ნაწილის შიგნით, სადაც წვერი გამოდის.
გ ჩადეთ კამერა ქეისში და შეაერთეთ კამერის კაბელი.
დ მიამაგრეთ სერვო გაზაფხულის ზედა პანელზე.
ე შეაერთეთ გრძელი მავთულები სერვო ქინძისთავებთან (5V, Gnd, სიგნალი)
ვ მიაწოდეთ კამერის კაბელი და მავთულები სერვოზე გაზაფხულის მეშვეობით და სხეულის ზედა ნაწილში გაკეთებული ხვრელის მეშვეობით, რათა ისინი ბუას ღრუ სხეულში შევიდნენ.
ნაბიჯი 3: ნაბიჯი 3: შეავსეთ იგი
ა ამოიღეთ დანამატი ბუდის ქვემოდან და გაზარდეთ ამ ხვრელის ზომა პლასტმასის მოჭრით. განაგრძეთ ზომების გაზრდა მანამ, სანამ Raspberry Pi და სპიკერი არ ჯდება ბუ სხეულში.
ბ მას შემდეგ, რაც ხვრელი საკმარისად დიდი იქნება იმისათვის, რომ ყველა კომპონენტი მოთავსდეს შიგნით, გაიყვანეთ კამერის კაბელი, რომელსაც ბუდის ზედა ნაწილიდან იკვებებდით და ამოაერთეთ იგი ჟოლოს პიში.
გ ანალოგიურად, გაიყვანეთ servo მავთულები და შეაერთეთ ისინი Raspberry Pi- ში:
- +5v servo => +5V Pi- ზე
- Gnd servo => gnd Pi
- სიგნალი servo => pin 12 Pi
დ შეაერთეთ USB სპიკერი Pi- ში.
ე ჩადეთ SD ბარათი Pi- ში.
ვ Power Pi პორტატული დენის წყაროს გამოყენებით.
ზ ჩადეთ Pi, კვების ბლოკი და სპიკერი ბუში, ძირში არსებული ხვრელის მეშვეობით.
ნაბიჯი 4: ნაბიჯი 4: დააინსტალირეთ Pi
ყველა კოდი შეიძლება მოიძებნოს
ა ჩამოტვირთეთ Raspian და ატვირთეთ იგი თქვენს SD ბარათზე Balena Etcher გამოყენებით.
ბ დისტანციურად თქვენს პიზე წვდომა
- დაამატეთ ფაილი სახელწოდებით ssh თქვენს ჩატვირთვის sd ბარათს
-
დაამატეთ ფაილი სახელწოდებით wpa_supplicant.conf და ჩაწერეთ თქვენი wifi სერთიფიკატები
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1
ქსელი = {ssid = "MySSID" psk = "MyPassword"}
გ ჩადეთ SD ბარათი pi- ში და სცადეთ წვდომა ssh- ის საშუალებით.
ნაბიჯი 5: ნაბიჯი 5: თავის გადატანა
კოდის სახელმძღვანელო თავის გადასატანად (სერვოს კონტროლი ჟოლოს პიით)
სერვერის გასაკონტროლებლად Pi– ზე ჩვენ ვაპირებთ შევქმნათ სკრიპტი, რომელიც აკონტროლებს GPIO ქინძისთავებს, რომელთანაც დაკავშირებულია servo.
ა შეაერთეთ სერვო Pi- სთან:
- +5v servo => +5V Pi- ზე
- Gnd servo => gnd Pi
- სიგნალი servo => pin 12 Pi- ზე
ბ თქვენ ჯერ უნდა დააყენოთ gpio ქინძისთავები, რომ გამოიყენოთ PWM სერვოს სიგნალის პინზე.
გ შემდეგ, ეს ისეთივე მარტივია, როგორც სიგნალის პინის მოვალეობის ციკლის შერჩევა (ახსნილია აქ), რათა გადავიყვანოთ სერვო 90 გრადუსიდან სამუშაო ციკლით 7.5 -დან 0 გრადუსამდე, როდესაც მოვალეობის ციკლი არის 2.5 და 180 გრადუსამდე მოვალეობის ციკლით 12.5
იმპორტი RPi. GPIO როგორც GPIO
იმპორტის დრო GPIO.setmode (GPIO. BOARD) GPIO.setwarnings (false) GPIO.setup (12, GPIO. OUT) p = GPIO. PWM (12, 50) p.start (7.5) try: while True: p. ChangeDutyCycle (7.5) # 90 გრადუსი დრო. ძილი (1) გვ. ChangeDutyCycle (2.5) # 0 გრადუსი დრო. ძილი (1) გვ. ChangeDutyCycle (12.5) # 180 გრადუსი დრო. ძილი (1) კლავიატურის გარდა შეფერხება: p.stop () GPIO.cleanup ()
ნაბიჯი 6: ნაბიჯი 6: მიღების Hoot
კოდის სახელმძღვანელო ბუების ხუჭუჭის გასაკეთებლად (ჟოლოს პითან აუდიოს დაკვრა)
ა შეაერთეთ USB სპიკერი.
ბ ჩამოტვირთეთ ხმა - ჩვენ ავირჩიეთ საშინელი ხუმრობა.
გ გაუშვით ხმა ამ ბრძანების გაშვებით: omxplayer -o alsa: hw: 1, 0 owl_sound.mp3
[დ. თუ ეს არ მუშაობს, შეამოწმეთ რა გამომუშავებას იყენებს თქვენი Pi და რა მოცულობით ბრძანება alsamixer - თქვენ მიესალმებიან მიქსერის ეკრანს, სადაც შეგიძლიათ შეცვალოთ მოცულობა და შეარჩიოთ თქვენი მედია მოწყობილობა. თქვენი ხმის მოცულობის გასაზრდელად, შეასრულეთ ბრძანება, როგორც ეს omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500 ამ ბგერის პითონის გამოყენებით დასათვალიერებლად გადახედეთ ჩვენს სატესტო სკრიპტს.]
იმპორტის ქვეპროცესს
command = "omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500" player = subprocess. Popen (command.split (')), stdin = subprocess. PIPE, stdout = subprocess. PIPE, stderr = subprocess. მილები)
ნაბიჯი 7: ნაბიჯი 7: გაუშვით ვიდეო Pi- დან
კოდის სახელმძღვანელო ჟოლოს პი კამერის ნაკადის შესაქმნელად
ა გაუშვით python app.py და იხილეთ თქვენს ადგილობრივ ქსელში https://raspberrypi.local: 5000
ბ ეს კოდი აღებულია და ოდნავ ადაპტირებულია მიგელ გრინბერგისგან https://blog.miguelgrinberg.com/post/flask-video-… ის მშვენივრად განმარტავს, თუ როგორ კეთდება ეს და მისი გაკვეთილები შესანიშნავია-deffo შეამოწმეთ იგი! ძირითადი კონცეფცია ისაა, რომ ჩვენ ვიყენებთ ძაფს და გენერატორებს ნაკადის სიჩქარის გასაუმჯობესებლად.
ნაბიჯი 8: ნაბიჯი 8: სხეულის გამოვლენა
სხეულის გამოვლენის კოდი (ImageNetSSD ვიდეო ნაკადზე ჟოლოს პი)
ა ვინაიდან ჩვენ ვიყენებთ Raspberry Pi 4 -ს, ჩვენ ჩავთვალეთ, რომ უმჯობესია, შევეცადოთ მასზე ღრმა სწავლების მოდელები, ვიდრე ძირითადი HaarCascade მეთოდი, რომელიც აქამდე შემოვიფარგლეთ.
ბ ჩვენ შევხედეთ ზოგიერთ წინასწარ მომზადებულ მოდელს, როგორიცაა YOLOv3, რომელიც გამოიყურება ძალიან მაგარი. YOLOv3 მცირე წონა, რომელიც იდეალური იქნებოდა Pi- სთვის, მაგრამ ჩვენ ვერ შევძელით მისი გაშვება:(გ სამაგიეროდ, ჩვენ ავირჩიეთ MobileSSD მოდელი, რომლის გამოყენებაც შეგვიძლია openCVs DNN (ღრმა ნერვული ქსელის) მოდულის გამოყენებით, როგორც ეს გავიგეთ ამ კოდიდან: https://heartbeat.fritz.ai/real-time-object-detection-on-raspberry -pi-using-opencv-dnn-98827255fa60 და გამოსახულების დამუშავების გაკვეთილების გმირის, ადრიან როზებროკისგან: https://www.pyimagesearch.com/2017/09/11/object-detection-with-deep-learning-and- opencv/
დ თუმცა, როდესაც ჩვენ ვცდილობთ ამ შინაარსის სტრიმინგს და მოდელების გაშვებას ყველა ჩარჩოზე, ეს იწვევს ჩამორჩენილ, ფრაგმენტულ ვიდეოს. ჩვენ კვლავ ვისწავლეთ ადრიან როზებროკიდან https://www.pyimagesearch.com/2017/10/16/raspberry-pi-deep-learning-object-detection-with-opencv/ და ვიყენეთ პითონის მრავალპროცესული მოდული ჩვენი სურათების რიგებში ჩასაყენებლად სადაც მათი დამუშავება შესაძლებელია კამერის ნაკადის ასე მძიმედ დაბლოკვის გარეშე.
ე სცადეთ თავად გაუშვათ კოდი:)
ნაბიჯი 9: ნაბიჯი 9: Zombie შეტყობინებების გაგზავნა
შეტყობინების გაგზავნის კოდი (პითონი ტელეფონზე)
ა ჩვენ გადავწყვიტეთ გამოვიყენოთ https://pushed.co შეტყობინების სერვისი.
ბ შეგიძლიათ მიიღოთ უფასო ანგარიში და ჩამოტვირთოთ აპლიკაცია და მართლაც სწრაფად დაინსტალირდეთ მობილური შეტყობინებების მიღებისას. ჩვენ შევქმენით შეტყობინებები პითონის სკრიპტის გამოყენებით.
იმპორტის მოთხოვნები
payload = {"app_key": "APP_KEY", "app_secret": "APP_SECRET", "target_type": "app", "content": "Owl- მა აღმოაჩინა ზომბი." } r = request.post ("https://api.pushed.co/1/push", მონაცემები = დატვირთვა)
ეს ძალიან მარტივია და თქვენ შეგიძლიათ დააკონფიგურიროთ თქვენი შეტყობინების სახელი!
ნაბიჯი 10: რა სიგიჟეა
ვიმედოვნებთ, რომ მოგეწონათ ჩვენი Smart Security Owl პროექტი! ეს იყო ძალიან სახალისო და მე ვგრძნობ თავს ბევრად უფრო უსაფრთხოდ ვიცოდი, რომ ჩემს სახლს ჩვენი სანდო ბუ იცავს.
თუ ფიქრობთ, რომ ეს იქნება ჰელოუინის ზღაპრული დამატება თქვენს ჭკვიან სახლში, გთხოვთ მოგვცეთ ხმა Instructables Halloween- ის კონკურსში და როგორც ყოველთვის, გახსოვდეთ მოგეწონებათ, დააკომენტარეთ და გამოიწერეთ!
დარეგისტრირდით ჩვენს საფოსტო სიაში!
გირჩევთ:
ამინდის სადგური: ESP8266 ღრმა ძილით, SQL, გრაფიკული შეფუთვა და ნაკვეთი: 3 ნაბიჯი
მეტეოროლოგიური სადგური: ESP8266 ღრმა ძილით, SQL, გრაფიკული შეფუთვა და ნაკვეთი: სასიამოვნო იქნება იცოდეთ ტემპერატურა, ტენიანობა ან სინათლის ინტენსივობა თქვენს აივანზე? ვიცი რომ გავაკეთებ. ასე რომ, მე გავაკეთე მარტივი ამინდის სადგური ასეთი მონაცემების შესაგროვებლად. შემდეგი სექციები არის ის ნაბიჯები, რომლებიც მე გადავიღე ერთის ასაშენებლად. მოდი დავიწყოთ
ფორმები: სწავლა ყველასთვის მაკია მაიკით: 5 ნაბიჯი (სურათებით)
ფორმები: სწავლა ყველასთვის მაკია მაიკით: მასწავლებლები ასწავლიან ყველა სტუდენტს. ზოგჯერ ჩვენი სწავლა განსხვავებულად უნდა გამოიყურებოდეს სტუდენტის მიხედვით. ქვემოთ მოცემულია მარტივი გაკვეთილის მაგალითი, რომლის შექმნაც შეგიძლიათ დარწმუნდეთ, რომ ყველა თქვენი სტუდენტი მუშაობს არსებით უნარებზე. ეს პროექტი კარგად იმუშავებს
Circuit Learn NANO: ერთი PCB. ადვილად სწავლა. უსასრულო შესაძლებლობები .: 12 ნაბიჯი (სურათებით)
Circuit Learn NANO: ერთი PCB. ადვილად სწავლა. უსასრულო შესაძლებლობები .: ელექტრონიკისა და რობოტიკის სამყაროში დაწყება შეიძლება თავიდან საკმაოდ საშიში იყოს. ბევრი რამ არის სასწავლი დასაწყისში (სქემის დიზაინი, შედუღება, დაპროგრამება, სწორი ელექტრონული კომპონენტების არჩევა და სხვა) და როდესაც რამე არასწორედ წავა
წვრილმანი ზომა და შექმენით ბატარეის დენის სარეზერვო გენერატორი W/ 12V ღრმა ციკლის ბატარეები: 5 ნაბიჯი (სურათებით)
წვრილმანი ზომა და შექმენით ბატარეის დენის სარეზერვო გენერატორი W/ 12V ღრმა ციკლის ბატარეები: *** შენიშვნა: იყავით ფრთხილად ბატარეებთან და ელექტროენერგიასთან მუშაობისას. ნუ დააკლდებით ბატარეებს. გამოიყენეთ იზოლირებული ინსტრუმენტები. დაიცავით უსაფრთხოების ყველა წესი ელექტროენერგიასთან მუშაობისას. *** მოემზადეთ მომდევნო დრომდე, სანამ ელექტროენერგია გამორთულია ლოდინის ბატარეასთან ერთად
სახლში დამზადებული მაცივარი ჭკვიანი კონტროლის ფუნქციონირებით (ღრმა საყინულე): 11 ნაბიჯი (სურათებით)
სახლში დამზადებული მაცივარი ჭკვიანი კონტროლის ფუნქციონირებით (ღრმა საყინულე): გამარჯობა მეგობრებო, ეს არის DIY მაცივრის მეორე ნაწილი, რომელიც დაფუძნებულია პელტიერის მოდულზე, ამ ნაწილში ჩვენ ვიყენებთ 2 პელტიერის მოდულს 1 -ის ნაცვლად, ასევე ვიყენებთ თერმულ კონტროლერს სასურველი ტემპერატურის დასადგენად ცოტა ენერგია