Სარჩევი:
- ნაბიჯი 1: საჭირო კომპონენტები
- ნაბიჯი 2: დისტანციური მოწყობილობის დამზადება
- ნაბიჯი 3: პროგრამები და ბიბლიოთეკები
- ნაბიჯი 4: SSH– ის გამოყენება და Libs– ის დაყენება
- ნაბიჯი 5: Bluetooth პროტოკოლი
- ნაბიჯი 6: ანტრესოლის გამოყენება DragonBoard 410c
- ნაბიჯი 7: პროგრამული უზრუნველყოფა DragonBoard 410c
ვიდეო: საგანგებო სიტუაციების გამოვლენა - Qualcomm Dragonboard 410c: 7 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
ვეძებთ უსაფრთხოების სისტემებს, რომლებიც მუშაობენ საგანგებო სიტუაციების მონიტორინგზე, შესაძლებელია შეამჩნიოთ, რომ ძალიან ძნელია ყველა ჩაწერილი ინფორმაციის დამუშავება. ამაზე ფიქრისას, ჩვენ გადავწყვიტეთ გამოვიყენოთ ჩვენი ცოდნა აუდიო/გამოსახულების დამუშავებაში, სენსორებსა და გამტარებლებში, რათა შევქმნათ ერთი სრული სისტემა, რომელიც შესაძლებელს გახდის წინასწარ განსაზღვროს სიტუაციები, როდესაც ადამიანების სიცოცხლეს საფრთხე ემუქრება.
ამ პროექტს აქვს ადგილობრივი სენსორი და დისტანციური მოწყობილობები მონაცემების შესაგროვებლად და დრაკონის დაფაზე გასაგზავნად, რომელსაც აქვს გადამამუშავებელი ძალა, რომელსაც შეუძლია მიღებული მონაცემებიდან მნიშვნელოვანი ინფორმაციის ამოღება.
დისტანციური მოწყობილობა არის Arduino დაფა, რომელსაც აქვს მოდული HC-06, რომლის საშუალებითაც შესაძლებელია ყველა ინფორმაციის გადაცემა და დაბალი ღირებულების ფართო ქსელი, რომელსაც შეუძლია დიდი რაოდენობით მონაცემების დამუშავება.
ნაბიჯი 1: საჭირო კომპონენტები
უპირველეს ყოვლისა, თქვენ უნდა გადაწყვიტოთ რომელი სენსორები და აქტივატორები გამოიყენებთ და გააკეთოთ ესკიზის ესკიზი.
ჩვენს შემთხვევაში, ჩვენ ვიყენებთ ARDUINO Pro Mini– ში დაკავშირებულ ამ სენსორებს, რომლებიც ჩამოთვლილია ქვემოთ:
- PIR (პასიური ინფრაწითელი-ყოფნის სენსორი)
- DHT 11 (ტენიანობის და ტემპერატურის სენსორი)
- CO სენსორი (ნახშირბადის მონოქსიდის სენსორი)
- ხმაურის სენსორი
აქტივატორები:
- საავტომობილო სერვო
- ზუზუნი
Კომუნიკაცია:
Bluetooth მოდული HC-06
Dragonboard 410c– სთვის ჩვენ გვექნება სენსორები და პროგრამები ყველა მონაცემის შეყვანის დასამუშავებლად:
სენსორები:
- DHT 11
- მზის სენსორი
აქტივატორები:
- სარელეო
- ლედ სტატუსი
- ბუზერი
ნაბიჯი 2: დისტანციური მოწყობილობის დამზადება
ახლა დროა დააკავშიროთ ყველა შემდეგი კომპონენტი Arduino დაფაზე, შექმნათ მოწყობილობა, რომელიც მიიღებს მონაცემებს გარემოსგან (ხმაური, ტენიანობა, ტემპერატურა და ა.
აუცილებელია ყურადღება მიაქციოთ კონექციებს, რადგან ყველა სენსორს აქვს ადგილები დასაკავშირებლად.
სისტემაში შესაძლებელია მონაცემების შეგროვების ერთზე მეტი მოწყობილობა. რაც უფრო მეტი მოწყობილობა დაინსტალირებული გაქვთ გარემოში, მით უფრო ზუსტი იქნება მონაცემთა დამუშავებით გამოწვეული დიაგნოსტიკა. ვინაიდან შესაძლებელი იქნება ინფორმაციის უფრო ფართო სპექტრის ამოღება, რაც შეიძლება სასარგებლო იყოს.
ჩვენ გადავწყვიტეთ გამოვიყენოთ arduino დაფა, რადგან მას აქვს უფრო თავსებადი სენსორები და შესაძლებელია ამ დისტანციური მოწყობილობების დაყენება სხვადასხვა ადგილას, მეტი ინფორმაციის შეგროვების მიზნით.
ადგილობრივი მოწყობილობა არის DragonBoard 410c, რომელიც ამუშავებს აუდიო, ვიდეო, ციფრულ და ანალოგურ ინფორმაციას თქვენი მძლავრი SnapDragon 410 პროცესორით.
კომპონენტების განთავსება (დისტანციური გაყოფა)
რომელ ერთ ნაწილს აქვს რამდენიმე ქინძისთავები, რომლებიც უნდა იყოს დაკავშირებული arduino pro მინი დაფაზე მარჯვენა ქინძისთავებთან.
Bluetooth მოდულს HC-06 აქვს 4 პინი:
- TX (გადამცემი) -> დაკავშირებულია RX Arduino– ს პინზე
- RX (მიმღები) -> დაკავშირებულია TX Arduino– ს პინზე
- VCC -> დაკავშირებულია 5 ვ -ზე
- GND
DHT 11 სენსორს აქვს 4 პინი (მაგრამ მხოლოდ 3 გამოიყენება):
- სიგნალი -> დაკავშირებულია ციფრულ პინზე
- VCC -> დაკავშირებულია 5 ვ -ზე
- GND
PIR სენსორს აქვს 3 პინი:
- სიგნალი -> დაკავშირებულია ციფრულ პინზე
- VCC -> დაკავშირებულია 5 ვ -ზე
- GND
გაზის სენსორს (MQ) აქვს 4 პინი:
- Digital OUT -> ციფრულ პინზე (თუ გსურთ ციფრული ინფორმაცია)
- ანალოგი OUT -> ჩვენს შემთხვევაში, ჩვენ ვიყენებთ ამას დაკავშირებულ ანალოგიურ პინზე
- VCC -> დაკავშირებულია 5 ვ -ზე
- GND
ხმაურის სენსორს (KY-038) აქვს 3 პინი:
- სიგნალი -> დაკავშირებულია ანალოგიურ პინზე
- VCC -> დაკავშირებულია 5 ვ -ზე
- GND
კოდი Arduino დისტანციური მოწყობილობისთვის:
/ * * Arduino აგზავნის მონაცემებს Blutooth– ის საშუალებით * * სენსორების მნიშვნელობა იკითხება, გაერთიანებულია * სიმებიანი და იგზავნება სერიული პორტის საშუალებით. */ #მოიცავს "DHT.h" #განსაზღვრეთ DHTPIN 3 #განსაზღვრეთ DHTTYPE DHT22 #განსაზღვრეთ PIRPIN 9 #განსაზღვრეთ COPIN A6 DHT dht (DHTPIN, DHTTYPE); float ტენიანი, ტემპერატურა; ლოგიკური პირ = 0; int co, მიკროფონი; სიმებიანი msg = ""; char nome [40]; void setup () {Serial.begin (9600); dht. დაწყება (); } void loop () {humidaty = dht.readHumidity (); ტემპერატურა = dht.readTemperature (); pir = digitalRead (PIRPIN); co = analogRead (COPIN); მიკროფონი = analogRead (A0); msg = "#;" + სიმებიანი (ტენიანი) + ";" სიმებიანი (ტემპერატურა)+ ";"+ სიმებიანი (მიკროფონი)+ ";"+ სიმებიანი (პირ)+ ";" + სიმებიანი (co) + ";#" + "\ n"; Serial.print (msg); დაგვიანება (2000); }
კოდის ახსნა:
არდუინოში გამოყენებული ყველა ქინძისთავები მოყვანილია კოდის დასაწყისში და ინიციალიზებულია სენსორების მუშაობისათვის საჭირო შესაბამისი ბიბლიოთეკები. ყველა მონაცემი გადაეცემა შესაბამის ცვლადებს, რომლებიც მიიღებენ თითოეული სენსორიდან წაკითხულ მნიშვნელობებს ყოველ 2000 მილიწამში, შემდეგ ყველა მათგანი გაერთიანებულია სტრიქონში, შემდეგ იწერება სერიულად. იქიდან DragonBoard– ში არსებული პიტონის კოდი ძალიან ადვილია ასეთი მონაცემების გადაღება.
ნაბიჯი 3: პროგრამები და ბიბლიოთეკები
მიღებული მონაცემების დასამუშავებლად და უსაფრთხოების სისტემის გასაკონტროლებლად აუცილებელია გამოიყენოთ რამდენიმე პროგრამული უზრუნველყოფა და ბიბლიოთეკა Qualcomm DragonBoard 410c– ში.
ამ სპეციფიკურ პროექტში ჩვენ ვიყენებთ:
პროგრამები:
- პითონი
- არდუინო
პლატფორმები:
- Amazon AWS -> ონლაინ სერვერი
- Phant -> მონაცემთა მონაცემების სერვისი
ბიბლიოთეკები:
- OpenCV-ვიდეო დამუშავება (https://opencv-python-tutroals.readthedocs.io/ka/latest/)
- PyAudio - აუდიო დამუშავება (https://people.csail.mit.edu/hubert/pyaudio/)
- ტალღა (https://www.physionet.org/physiotools/wave-installation.shtm)
- AudioOp (https://docs.python.org9https://scikit-learn.org/stable/install.html/2/library/audioop.html)
- Numpy (https://www.numpy.org)
- SciKit1 - ავარჯიშეთ და წინასწარ განსაზღვრეთ მანქანათმცოდნეობა (https://scikit-learn.org/stable/install.html)
- cPickle - შეინახეთ მანქანათმცოდნეობის პარამეტრები (https://pymotw.com/2/pickle/)
- MRAA - გამოიყენეთ GPIO (https://iotdk.intel.com/docs/master/mraa/python/)
- UPM-გამოიყენეთ GPIO (https://github.com/intel-iot-devkit/upm)
- PySerial - გამოიყენეთ Bluetooth მოწყობილობასთან სერიული კომუნიკაციისთვის (https://pythonhosted.org/pyserial/)
ნაბიჯი 4: SSH– ის გამოყენება და Libs– ის დაყენება
უპირველეს ყოვლისა, თქვენ უნდა მიიღოთ IP მისამართი Dragonboard– დან, ამის გასაკეთებლად თქვენ უნდა ჩართოთ DragonBoard, რომელიც დაკავშირებულია თაგვთან, კლავიატურასთან და HDMI მონიტორთან. როდესაც დაფა ჩართულია, თქვენ უნდა დაუკავშირდეთ ქსელს, შემდეგ გადადით ტერმინალში და გაუშვით ბრძანება:
sudo ifconfig
ამის შემდეგ შეგიძლიათ მიიღოთ IP მისამართი.
IP მისამართის საშუალებით თქვენ შეგიძლიათ შეხვიდეთ Dragonboard– ში SHH– ის საშუალებით, ამისათვის თქვენ გჭირდებათ ტერმინალის გახსნა კომპიუტერში, რომელიც დაკავშირებულია იმავე ქსელში, როგორც დაფა. ტერმინალში შეგიძლიათ გაუშვათ ბრძანება:
ssh linaro@{IP}
(თქვენ უნდა შეცვალოთ {IP} იმ IP მისამართით, რომელსაც მიიღებთ Dragonboard– ში).
პირველი ლიბ რაც თქვენ უნდა დააინსტალიროთ არის mraa lib. ამისათვის თქვენ უნდა შეასრულოთ შემდეგი ბრძანება ტერმინალში:
sudo add-apt-repository ppa: mraa/mraa && sudo apt-ge; t update && sudo apt-get install libmraa1 libmraa-dev mraa-tools python-mraa python3-mraa
პითონისთვის opencv- ს დასაყენებლად საჭიროა მხოლოდ ბრძანების გაშვება:
sudo apt-get დააინსტალირეთ python-opencv
PyAudio– ს დასაყენებლად საჭიროა ბრძანების გაშვება:
sudo apt-get დააინსტალირეთ python-pyaudio python3-pyaudio
Libs WAVE და AudioOp უკვე დამონტაჟებულია დაფაზე. Numpy– ის ინსტალაციისთვის თქვენ უნდა შეასრულოთ ბრძანება:
sudo apt-get დააინსტალირეთ python-numpy python-scipy
ბოლო lib, რომელიც თქვენ უნდა დააინსტალიროთ არის scikit, მისი ინსტალაციისთვის თქვენ უნდა დააინსტალიროთ pip. თქვენ მხოლოდ ბრძანების შესრულება გჭირდებათ:
pip დააინსტალირეთ scikit-lear
ნაბიჯი 5: Bluetooth პროტოკოლი
DragonBoard კავშირი Arduino– სთან Bluetooth– ის საშუალებით
Bluetooth მოდული (HC-06) თავდაპირველად დაუკავშირდა Arduino Nano– ს შემდეგი მაგალითის მიხედვით:
Linaro– ს (ოპერაციული სისტემა გამოიყენება DragonBoard– ის მიმდინარე პროექტში) გრაფიკული ინტერფეისით, ქვედა ბარის მარჯვენა მხარეს დააწკაპუნეთ Bluetooth სიმბოლოზე და შემდეგ დააწკაპუნეთ „ახალი მოწყობილობის დაყენებაზე“და დააკონფიგურირეთ Bluetooth მოდულით და დატოვეთ დაწყვილებული. დარწმუნდით, რომ თქვენი მოდული რეალურად არის დაკავშირებული Bluetooth სიმბოლოზე ხელახლა დაჭერით, დააწკაპუნეთ "მოწყობილობები …" და ნახეთ არის თუ არა თქვენი მოწყობილობის სახელი ჩამოთვლილი და დაკავშირებული. ახლა შეარჩიეთ თქვენი მოწყობილობა "Bluetooth მოწყობილობების" ეკრანზე და დააწკაპუნეთ მასზე მარჯვენა ღილაკით და აღნიშნეთ პორტი, რომელთანაც დაკავშირებულია თქვენი Bluetooth მოდული (მაგ.: "rfcomm0"). შენიშვნა: პორტის სახელი, რომელთანაც დაკავშირებულია თქვენი მოწყობილობა, მნიშვნელოვანი იქნება მომდევნო ეტაპზე მონაცემთა გაცვლის გასააქტიურებლად.
შექმენით DragonBoard მონაცემთა გაცვლა და Bluetooth
ძირითადად ჩვენ მივყვებით ბმულის ეტაპობრივად: https://www.uugear.com/portfolio/bluetooth-communi… მაგრამ ჩვენ არ შევასრულეთ წყვილის ნაწილი მხოლოდ პითონის კოდებისა და არდუინოს შესრულება. პითონში გამოიყენებოდა სერიული ბიბლიოთეკა, რომელიც ინიციალიზებულია bluetooth- თან დაკავშირებულ პორტში, შესაბამისად პითონის კოდი კითხულობს სენსორების მონაცემებს, რომლებიც არდუინოს უკავშირდება bluetooth მოდულის საშუალებით.
ნაბიჯი 6: ანტრესოლის გამოყენება DragonBoard 410c
დრაკონის დაფასა და კომპონენტებს შორის კავშირის დასამყარებლად, ჩვენ ვიყენებთ ფარის ტიპს, რომელსაც მეზანინი უწოდებს, შემუშავებულია 96 დაფაზე.
ამ ფარის გამოყენებით, პერიფერიული მოწყობილობების დაკავშირება ბევრად უფრო ადვილი ხდება.
კონექტორები იყენებენ გროვის განვითარების ნაკრებიდან, ასე რომ, ის იყენებს სპეციალურ კაბელს, რომელიც აკავშირებს ორივე გზას, ყველა ნაწილი მარტივად შეგიძლიათ ნახოთ ამ ვებგვერდზე:
ჩვენ ვიყენებთ ამ ნაკრებებს ქვემოთ:
- გროვის სარელეო
- Grove მზის სენსორი
- გროვის led სოკეტი
- გროვის ტემპერატურისა და ჰუმის სენსორი
- გროვ ბუზერი
ნაბიჯი 7: პროგრამული უზრუნველყოფა DragonBoard 410c
პროგრამის ნაწილი DragonBoard– ში იყო კოდირებული პითონში და Arduino– ზე გამოყენებული პროგრამა შემუშავდა C ++ - ში. ყოველ 2 წუთში Arduino კითხულობს მასზე მიმაგრებულ ყველა სენსორს. ვიდრე არდუინო კითხულობს DragonBoard– ს Bluetooth– ით. DragonBoard აერთიანებს არდუინოს მოსმენილ კითხვას მეზაზინური ფარის მიერ გაკეთებულ კითხვას აუდიოსა და ვიდეო ნიმუშების მახასიათებლებით.
ამ მონაცემებით, საბჭო ცდილობს წინასწარ განსაზღვროს, ხდება თუ არა ეს საგანგებო მდგომარეობა. საბჭო აგზავნის ამაზონის ვებ სერვისს Phant– ის გამოყენებით ნედლეულ მონაცემებს და მის მიერ გაკეთებულ პროგნოზს. თუ დაფა წინასწარმეტყველებს, რომ ეს ხდება უცნაურ სიტუაციაში, ის ცდილობს გააფრთხილოს მომხმარებელი, რომელიც ანათებს led და buzzer ანტრესოლით და აჩვენებს ვებ აპლიკაციას. ვებ აპლიკაციაში ასევე შესაძლებელია ნახოთ უხეში მონაცემები იმის გასაგებად, თუ რა ხდება ამ სფეროში.
გირჩევთ:
ვიბრაციის გამოვლენა პიეზოელექტრული შოკის შეხების სენსორული მოდულის გამოყენებით: 6 ნაბიჯი
ვიბრაციების გამოვლენა პიეზოელექტრული შოკის შეხების სენსორული მოდულის გამოყენებით: ამ გაკვეთილში ჩვენ ვისწავლით თუ როგორ უნდა გამოვავლინოთ შოკის ვიბრაცია მარტივი პიეზოელექტრული სენსორის ვიბრაციის მოდულისა და ვიზუინოს გამოყენებით. უყურეთ სადემონსტრაციო ვიდეოს
როგორ გავაკეთოთ ავტომატური საგანგებო სინათლის წრე D882 ტრანზისტორის გამოყენებით: 3 ნაბიჯი
როგორ გავაკეთო ავტომატური საგანგებო სინათლის წრე D882 ტრანზისტორის გამოყენებით: გამარჯობა მეგობრებო, მოგესალმებით ჩემს არხზე, დღეს მე გაჩვენებთ როგორ გააკეთოთ ავტომატური ემერჯენსი სინათლის 8 წრე
ობიექტის გამოვლენა W/ Dragonboard 410c ან 820c OpenCV და Tensorflow– ის გამოყენებით .: 4 ნაბიჯი
ობიექტის გამოვლენა W/ Dragonboard 410c ან 820c OpenCV და Tensorflow– ის გამოყენებით .: ეს ინსტრუქცია აღწერს თუ როგორ უნდა დააინსტალიროთ OpenCV, Tensorflow და მანქანათმცოდნეობის ჩარჩოები Python 3.5– ისთვის, რათა გაუშვათ ობიექტის გამოვლენის პროგრამა
სტატიკური ელექტროენერგიის საზომი საგანგებო განათების სისტემა: 8 ნაბიჯი
სტატიკური ელექტროენერგიის საზომი საგანგებო განათების სისტემა: ოდესმე გიფიქრიათ საგანგებო განათების სისტემის შექმნაზე, როდესაც თქვენი ძირითადი ენერგია გამორთულია. და რადგან თქვენ გაქვთ მცირედი ცოდნა ელექტრონიკაში, თქვენ უნდა იცოდეთ, რომ თქვენ შეგიძლიათ მარტივად შეამოწმოთ ელექტროენერგიის ხელმისაწვდომობა უბრალოდ გაზომვით
გადაუდებელი კვების ბანკი - წვრილმანი ინსტრუმენტების ყუთი მზე: რადიო+ დამტენი+ განათება საგანგებო სიტუაციისთვის!: 4 ნაბიჯი
გადაუდებელი კვების ბანკი - წვრილმანი ინსტრუმენტების ყუთი მზე: რადიო+ დამტენი+ განათება საგანგებო სიტუაციებისთვის!: დაამატეთ 28 მარტი 2015: მე გავაკეთე ჩემი ხელსაწყო ყუთები საგანგებო სიტუაციებისთვის და გამოვიყენე ახლა, როდესაც ჩემი ქალაქი ტალახშია ჩაფლული. როგორც გამოცდილება შემიძლია ვთქვა, რომ მე ვმსახურობდი ტელეფონების დატენვისთვის და რადიოს მოსასმენად. ძველი ინსტრუმენტების ყუთი? ძველი კომპიუტერის დინამიკი? გამოუყენებელი 12 ვოლტიანი ბატარეა? შეგიძლიათ გააკეთოთ