Სარჩევი:

ავტომობილის უკანა ხედვა: 9 ნაბიჯი (სურათებით)
ავტომობილის უკანა ხედვა: 9 ნაბიჯი (სურათებით)

ვიდეო: ავტომობილის უკანა ხედვა: 9 ნაბიჯი (სურათებით)

ვიდეო: ავტომობილის უკანა ხედვა: 9 ნაბიჯი (სურათებით)
ვიდეო: ჩაკეტილი კარის 5 წამში გაღება 2024, ივლისი
Anonim
Image
Image

რატომ ვაშენებთ ავტომობილის უკანა ხედვას?

შეერთებული შტატების დაავადებათა კონტროლის ცენტრმა აღნიშნა, რომ 2001-2003 წლებში დაახლოებით 15 47 წლამდე 7 475 ბავშვი (წელიწადში 2, 492) მკურნალობდა საავტომობილო მანქანების უკანა ინციდენტების გამო. წელიწადში დაახლოებით 300 ადამიანი იღუპება სარეზერვო შეჯახებების შედეგად. 2018 წლისთვის შეერთებულ შტატებში გაყიდული ყველა მანქანა საჭიროებს სავალდებულო სარეზერვო კამერას.

როგორ მოვაგვაროთ პრობლემა?

დღეს ბაზარზე არსებული მანქანების უმეტესობას ჯერ კიდევ არ აქვს სარეზერვო კამერა, რომელიც მოიცავს იმ მანქანების დაახლოებით ნახევარს, რომლებიც დღეს იყიდება აშშ -ში და ნახევარზე მეტს მთელს მსოფლიოში. ჩვენ შეგვიძლია ამ პრობლემის მოგვარება მანქანის უკანა ნაწილზე კამერის დაყენებით, სანომრე ნიშნის სივრცის გამოყენებით.

Walabot შეძლებს აღმოაჩინოს მანძილი სამიზნე მანქანასთან ყველაზე ახლოს.

Intel RealSense R200 კამერა მოგვცემს უფრო მეტ დეტალებს იმის შესახებ, რაც ჩანს, მათ შორის დაბალი განათების სიტუაციის ჩათვლით.

Intel Joule დეველოპერის ნაკრები საკმარისად ძლიერია იმისათვის, რომ გაუშვას RealSense კამერები Walabot– თან ერთად. Raspberry Pi არ არის საკმარისად ძლიერი RealSense 3D კამერის გასაშვებად, რომელშიც ჩვენ მომავალში შეგვიძლია დავამატოთ კიდევ ბევრი ფუნქცია, რომელსაც შეუძლია გააუმჯობესოს მანქანის ფუნქციონირება. იგივე ვერსია შეიძლება გამოყენებულ იქნას Pi– სთან ჩვეულებრივი USB კამერით, მაგრამ ეს არ იქნება კარგი ღამით.

Android ტელეფონი/ტაბლეტი გამოიყენება სარეზერვო კამერის ჩვენების მიზნით, ეს არის დამატებითი ეკრანის ღირებულების შესამცირებლად. iOS ვერსიის შექმნა შესაძლებელია მოთხოვნისთანავე.

ამ კომპონენტების საშუალებით ჩვენ შევძლებთ ავაშენოთ უკანა ხედვა, რომელიც მომხმარებელს მანქანის უკანა ნაწილს უჩვენებს.

ნაბიჯი 1: შეაგროვეთ საჭირო ტექნიკა

დააინსტალირეთ Ubuntu Joule- ზე და საჭირო ბიბლიოთეკები, რომლებიც საჭიროა მის გასაშვებად
დააინსტალირეთ Ubuntu Joule- ზე და საჭირო ბიბლიოთეკები, რომლებიც საჭიროა მის გასაშვებად
  1. ინტელ ჯული
  2. Walabot Pro
  3. Intel R200 RealSense კამერა
  4. Android ტელეფონი/ტაბლეტი, რომელიც მუშაობს 5.0 ან უფრო მაღალი
  5. მანქანის ადაპტერი დანამატისთვის და 12VDC AC ადაპტერი (ეს არის დემონსტრაციისთვის, რომ გააძლიეროს ჯული, წარმოების ვერსია შეიცავს სხვადასხვა სიმძლავრის მექანიზმს)
  6. USB კერა კამერისა და Walabot– ის დასაკავშირებლად (USB3 კამერისთვის და USB2 Walabot– ისთვის)
  7. DC to AC Direct დანამატი დენის ინვერტორი
  8. ზოგადი 3D პრინტერი საბაჟო ნიშნის ფირფიტის ჩარჩოს დასაბეჭდად

ნაბიჯი 2: დააინსტალირეთ Ubuntu Joule- ზე და საჭირო ბიბლიოთეკებზე, რომლებიც საჭიროა მის გასაშვებად

მას შემდეგ, რაც ჩვენ გადავწყვიტეთ Linux– ის მარშრუტით წასვლა, მიჰყევით გზამკვლევს https://developer.ubuntu.com/core/get-started/intel-joule Ubuntu– ს Joule– ზე დასაყენებლად. Ubuntu გვაძლევს დიდ მოქნილობას, რომ გავუშვათ რეალური ოპერაციული სისტემა IoT დაფუძნებულ ჩიპზე.

ნაბიჯი 3: გაუშვით RealSense კამერა

გაუშვით RealSense კამერა
გაუშვით RealSense კამერა
გაუშვით RealSense კამერა
გაუშვით RealSense კამერა

ვინაიდან ჩვენ ვიყენებთ Android ტელეფონს/ტაბლეტს, რათა დაზოგოთ მასალის ხარჯი, ასევე უფრო ხელმისაწვდომი მომხმარებლებისთვის, ჩვენ ვიყენებთ მოძრაობის ბიბლიოთეკას უსაფრთხოების კამერების მსგავსი კამერის გასამგზავრებლად. მას შემდეგ რაც Ubuntu დაინსტალირდება და უკავშირდება wifi- ს, ჩვენ შეგვიძლია გავხსნათ ტერმინალი და გამოვიყენოთ შემდეგი ბრძანება. ჩვენ პირველად ვუკავშირდებით კამერას Joule– ს USB3 პორტის საშუალებით, შემდეგ გავაკეთებთ შემდეგ ნაბიჯებს.

ა მოძრაობის დაყენება უბუნტუზე:

sudo apt-get updatesudo apt-get install motion

ბ დააკოპირეთ კონფიგურაციის ფაილები:

mkdir.motion sudo cp /etc/motion/motion.conf ~/.motion/motion.conf

გ ფაილის კონფიგურაცია, მათთვის, ვინც იცნობს ubuntu– ს, შეუძლია დააინსტალიროს Sublime ტექსტის უფრო მარტივი რედაქტირებისთვის, წინააღმდეგ შემთხვევაში ჩვენ შეგვიძლია მისი რედაქტირება ბრძანების ხაზში.

sudo nano ~/.motion/motion.conf

დ R200 კამერის ჩართვის შემდეგ, ჩვენ შეგვიძლია შევცვალოთ შემდეგი ხაზები მოძრაობაში. Conf

ეს არის ფონის რეჟიმში ჩასმა:

# დაიწყეთ დემონის (ფონის) რეჟიმში და გაუშვით ტერმინალი (ნაგულისხმევი: გამორთულია) დემონი ჩართულია

ეს არის RealSense კამერის კამერის ხედის გამოსაყენებლად.

# ვიდეომეტყველება გამოსაყენებლად (ნაგულისხმევი /dev /video0) # FreeBSD- ისთვის ნაგულისხმევია /dev /bktr0 videodevice /dev /video2

სიგანისა და სიმაღლის შეცვლით, 1280 x 720 ჩემთვის მშვენივრად მუშაობდა, მაგრამ თქვენ შეგიძლიათ ითამაშოთ ზომებით, რათა ნახოთ რა შეესაბამება თქვენს საჭიროებას.

# სურათის სიგანე (პიქსელი). მოქმედი დიაპაზონი: კამერაზეა დამოკიდებული, ნაგულისხმევი: 352 სიგანე 1280 # სურათის სიმაღლე (პიქსელი). მოქმედი დიაპაზონი: კამერაზეა დამოკიდებული, ნაგულისხმევი: 288 სიმაღლე 720

მე დავაყენე ეს 30 -ზე, რაც უფრო მაღალია შენთვის რიცხვი მით მეტი გამომთვლელი ძალა დასჭირდება მას. თქვენ შეგიძლიათ ითამაშოთ ირგვლივ, რომ ნახოთ რა არის მისი საორიენტაციო ნიშანი, მაგრამ 30 ჩემთვის მშვენივრად მუშაობდა.

# კადრების მაქსიმალური რაოდენობა წამში. # მოქმედი დიაპაზონი: 2-100. ნაგულისხმევი: 100 (თითქმის არ არის შეზღუდული). ჩარჩოს სიჩქარე 30

ვინაიდან ჩვენ ყოველთვის ვბრუნდებით მანქანის უკან, ჩვენ შეგვიძლია დავაყენოთ გამოყოფილი პორტი, ჩვენ ვიყენებთ 5001 -ს

#################################################### ##########პირდაპირი ნაკადის სერვერი ###################################### ########################მინი-http სერვერი უსმენს ამ პორტს მოთხოვნებისთვის (ნაგულისხმევი: 0 = გამორთული) ნაკადის_პორტი 5001#jpeg ხარისხი (პროცენტულად) წარმოებული სურათები (ნაგულისხმევი: 50) ნაკადის_ხარისხი 50 # გამომავალი კადრები 1 კადრი / წმ სიჩქარით, როდესაც მოძრაობა არ არის გამოვლენილი და გაიზარდოს # სიჩქარეზე, რომელიც მოცემულია ნაკადის_მაქსრატით მოძრაობის გამოვლენისას (ნაგულისხმევი: გამორთულია) ნაკადის_მოძრაობა გამორთულია # მაქსიმალური კადრირება ნაკადის ნაკადებისთვის (ნაგულისხმევი: 1) stream_maxrate 60 # შეზღუდეთ ნაკადის კავშირები მხოლოდ localhost– თან (ნაგულისხმევი: ჩართულია) stream_localhost გამორთულია

ამის შემდეგ შეგიძლიათ გაუშვათ ifconfig და გაარკვიოთ IP მისამართი და გაუშვათ ტერმინალში, პორტი იქნება 5001.

მოძრაობა

თუ შეცდომები არ არის, ადვილია შეამოწმოთ კამერა თქვენი კომპიუტერიდან IP– ის გამოყენებით, გაასწოროთ ის შეცდომები, როგორიცაა ნებართვის პრობლემები, თუკი არსებობს.

მას შემდეგ რაც გაშვება, ჩვენ შეგვიძლია დავამატოთ ის Ubuntu– ს გაშვების პროგრამაში.

მოძრაობის გაშვება კამერისთვის

motion.conf მიმაგრებულია კოდის განყოფილებაში, შეგიძლიათ გადახედოთ სხვა პარამეტრებს იქ.

ნაბიჯი 4: დააყენეთ Walabot

დააყენეთ Walabot
დააყენეთ Walabot
დააყენეთ Walabot
დააყენეთ Walabot
დააყენეთ Walabot
დააყენეთ Walabot
დააყენეთ Walabot
დააყენეთ Walabot

კამერის ადგილზე ყოფნისას, ჩვენ მაინც გვჭირდება walabot- ის დაყენება, ამან შეიძლება გამოავლინოს მანძილი ავტომობილს შორის უკანა ობიექტამდე, რაც ნათელს ხდის იმას, თუ როგორ უნდა

ა, ჩამოტვირთეთ deb ფაილი

მიჰყევით ინსტრუქციას https://api.walabot.com/_install.html#_linux დააინსტალირეთ დააინსტალირეთ Walabot API, რათა ის იმპორტირებული იყოს პითონის პროექტებში.

ვებგვერდზე არის შეცდომა იმ ნაწილში, სადაც ის აყენებს Walabot API- ს https://walabot.com/api/_pythonapi.html#_installingwalabotapi სადაც ნათქვამია

python -m pip “/usr/share/walabot/python/WalabotAPI-1.0.21.tar.gz”

ასე უნდა იყოს

python -m pip install "/usr/share/walabot/python/WalabotAPI-1.0.21.tar.gz"

ბ შეაერთეთ Walabot Pro USB 2 -ის საშუალებით, მე ვერ მოვახერხე USB3– ის მუშაობა, მაგრამ usb2 კარგად მუშაობს Linux– თან დაკავშირებისას. მას შემდეგ, რაც Joule– ს აქვს მხოლოდ ერთი USB3 პორტი, დააკავშირეთ დამატებითი USB2 პორტი, რომ Walabot Pro– ს აქ განთავსდეს

გ გამოსცადეთ Walabot პროექტი, როგორიცაა https://github.com/Walabot-Projects/Walabot-Senso… საქაღალდეში შემდეგი ბრძანების გაშვებით

პითონი SensorTargets.py

ამან უნდა მოგცეთ კარგი ტესტი იმის დასადგენად, მუშაობს თუ არა Walabot სწორად, ასევე როგორ გავზომოთ მანძილი თქვენთვის სასურველ ნივთებზე. DistanceMeasure მაგალითი არ იყო ძალიან თანმიმდევრული გაზომვისას და zPosCm როგორც ჩანს უკიდურესად ზუსტია, ამიტომ გადავწყვიტე გამოვიყენო zPosCM დემოსათვის.

დ ჩვენ ჯერ კიდევ გვჭირდება მონაცემების გადატანა ჩვენების მოწყობილობაზე, ვინაიდან ჩვენ ანდროიდზე ვუშვებთ მასალის ღირებულების შესამცირებლად, შეგვიძლია გამოვიყენოთ სოკეტები. ჩვენ ვიყენებთ შემდეგ კოდს სოკეტის და udp პითონში დასაყენებლად.

MYPORT = 5002 sys იმპორტი, დრო სოკეტის იმპორტიდან * s = სოკეტი (AF_INET, SOCK_DGRAM) s. Bind (('', 0)) s

შემდეგი ბრძანება გადასცემს მონაცემებს განახლების შესახებ

s.sendto (str (სამიზნეები [0].zPosCm), ('255.255.255.255', MYPORT))

ე როდესაც ეს კეთდება, ჩვენ შეგვიძლია მისი დაყენება გაშვების პროგრამაში

ვ Walabot ახლა აყენებს და გადასცემს მონაცემებს UDP– ით, სრული პითონის კოდი ჩანს კოდის დანართის არეალში. ქვემოთ მოცემული ეკრანის ანაბეჭდი არის დაბეჭდილი, თუ როგორ უნდა გამოიყურებოდეს ის, როდესაც არ არსებობს ტერიტორია. კოდი მიმაგრებულია კოდის განყოფილებაში.

ნაბიჯი 5: შექმენით Wifi ცხელი წერტილი ჯულიდან

Wifi ცხელი წერტილის შექმნა ჯოულიდან
Wifi ცხელი წერტილის შექმნა ჯოულიდან

ჩვენ ვქმნით ჩვენს საკუთარ wifi ცხელ წერტილს android მოწყობილობისთვის მონაცემების გადასაცემად. ქვემოთ მოყვანილი ბრძანების გამოყენება ავტომატურად დააყენებს მას. იგი გამოიყენება Ubuntu 16.04 ან უფრო გვიან, როგორც ეს გამოიყენება. ჩვენ ავტომატურად დავუკავშირდებით ამას Android პროგრამის საშუალებით მომდევნო ეტაპზე. გამოიყენეთ ეს ბრძანება პროგრამების გაშვებისას.

nmcli მოწყობილობა wifi ცხელი წერტილი სახელწოდებით მანქანა-უკანა ხედვა ssid მანქანა-უკანა ხედვის ბენდი bg პაროლი დაცულია

Walabot– ის პითონის ფაილის შიგნით, ჩვენ ასევე განვაახლებთ მას, სადაც ჩვენ გავაგზავნით udp შეტყობინებებს იმ მოწყობილობებზე, რომლებიც დაკავშირებულია პირადი ცხელი წერტილის საშუალებით. ეს არის იმის უზრუნველსაყოფად, რომ პაკეტი არ დაიკარგოს.

out = os.popen ('ip მეზობელი'). წაიკითხეთ (). გაყოფილი ხაზები () i- სთვის, ხაზი enumerate (out, start = 1): ip = line.split ('') [0] s.sendto (str (სამიზნეები [0].zPosCm), (ip, MYPORT))

ნაბიჯი 6: შექმენით Android როგორც ეკრანის ეკრანი

Android- ის შექმნა ეკრანის სახით
Android- ის შექმნა ეკრანის სახით

Android აპლიკაცია შექმნილია მოწყობილობის ჩვენებისათვის, ძირითადად იმიტომ, რომ ამცირებს მასალის ანგარიშს, რადგან სხვაგვარად ცალკე ეკრანი შეიძლება იყოს ძვირიც და ძნელი ინსტალაციაც. რაც შეეხება ამ პროექტს ჩვენ შეგვიძლია გამოვიყენოთ Android ტელეფონი/ტაბლეტი.

Android ყურადღებას ამახვილებს 3 ნაწილად, რაც ადრე გავაკეთეთ,

  • დაკავშირება IoT მოწყობილობის საშუალებით შექმნილ wifi ცხელ წერტილთან (Intel Joule)
  • გაუშვით RealSense კამერა wifi– ით მოძრაობის გზით
  • Walabot- ის სამიზნედან მანძილის გაზომვა udp– ით

ყველაფრის დაყენების და Android პროგრამის დაყენების შემდეგ (ღია წყარო აქ), თქვენ ნახავთ კამერას, რომელიც მუშაობს walabot– თან ერთად

ნაბიჯი 7: გამოსცადეთ ყველაფერი

Image
Image
ყველაფრის გამოცდა
ყველაფრის გამოცდა
ყველაფრის გამოცდა
ყველაფრის გამოცდა

ახლა ჩვენ ყველაფერი გააქტიურებულია, ჩვენ უნდა გვქონდეს ყველა კომპონენტის ძირითადი კონფიგურაცია. როდესაც ჩვენ ვიწყებთ ჯოულის დაფის დაყენებას, ცხელი წერტილი ავტომატურად უნდა იყოს დაყენებული, მოძრაობა და walabot აპლიკაცია დაიწყება მასთან ერთად, ხოლო როდესაც ჩვენ android აპლიკაციას ჩავრთავთ, ჩვენ უნდა შეგვეძლოს ნაკადის გადატანა კამერიდან. ეს ნიშნავს, რომ კლავიატურა/მაუსი და მონიტორი აღარ არის საჭირო IoT მოწყობილობის ფუნქციონირებისთვის. თუ რაიმე პრობლემა წარმოიქმნება ამ მომენტში, მაგალითად ბიბლიოთეკები არ არის სწორად დაინსტალირებული, ჩვენ უნდა გამოვასწოროთ ის შემდეგ ეტაპზე გადასვლამდე.

3D ბეჭდვა გარსაცმები, რომელიც იტევს კამერა ძალიან მნიშვნელოვანია.

აპარატურის შექმნისას, ჩვენ უნდა გვქონდეს ჩვენი პერსონალური 3D ნაბეჭდი გარსაცმები კამერისთვის. ვინაიდან ეს არის პროტოტიპი, ის შეიძლება ოდნავ გაფუჭდეს, მაგრამ როდესაც ჩვენ ვამზადებთ საბაჟო სანომრე ნიშნის მფლობელს, ჩვენ ველოდებით, რომ ყველა კომპონენტი იყოს მფლობელის შიგნით.

ნაბიჯი 8: გამოცდა ნამდვილ მანქანაზე

Image
Image
გამოცდა ნამდვილ მანქანაზე
გამოცდა ნამდვილ მანქანაზე
გამოცდა ნამდვილ მანქანაზე
გამოცდა ნამდვილ მანქანაზე

ახლა, როდესაც ჩვენ ყველაფერი გავაკეთეთ, ჩვენ შეგვიძლია შევამოწმოთ ის ნამდვილ მანქანაზე. ვინაიდან ეს არის პროტოტიპი, ყველაფერი შეიძლება იყოს ცოტა უხეში, ჩვენ ვიყენებთ ფირის ფირს ზოგიერთი კომპონენტისთვის.

Joule IoT ნაკრების გასაძლიერებლად, ჩვენ გამოვიყენეთ DC to AC Direct Plug-in დენის ინვერტორი, შემდეგ უბრალოდ უბრალოდ გავუშვით გრძელი დენის განყოფილება მაგისტრალზე.

ჩვენ გვექნება წინა და უკანა ნაწილი. ეს ახლა მხოლოდ პროტოტიპია, შემდეგი ვერსია ინტეგრირებს ჩიპებს სანომრე ნიშნის მფლობელში.

და წინა ნაწილისთვის ჩვენ შეგვიძლია გამოვიყენოთ ტელეფონის დამჭერი ან უბრალოდ ფირფიტა Android ტაბლეტი.

ნაბიჯი 9: გამოიყენეთ იგი მსოფლიოში

გამოიყენეთ იგი მსოფლიოში
გამოიყენეთ იგი მსოფლიოში

ამ ინსტრუმენტის გამოყენებით, ჩვენ შეგვიძლია უსაფრთხოდ დავბრუნოთ მანქანა სხვა მანქანებზე და შევძლოთ ფეხით მოსიარულეთა მონიტორინგი. თქვენ შეგიძლიათ ნახოთ დემო ვიდეო დასაწყისში. პროექტის მიზანია ხელი შეუწყოს უსაფრთხო მართვის პრაქტიკას.

თქვენ შეგიძლიათ შეამოწმოთ პროექტი

გირჩევთ: