Mündəricat:

Sonar, Lidar və Kompüter Görmə qabiliyyətini görmə məhdudiyyətli insanlara kömək etmək üçün: 16 addım
Sonar, Lidar və Kompüter Görmə qabiliyyətini görmə məhdudiyyətli insanlara kömək etmək üçün: 16 addım

Video: Sonar, Lidar və Kompüter Görmə qabiliyyətini görmə məhdudiyyətli insanlara kömək etmək üçün: 16 addım

Video: Sonar, Lidar və Kompüter Görmə qabiliyyətini görmə məhdudiyyətli insanlara kömək etmək üçün: 16 addım
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Iyul
Anonim
Sonar, Lidar və Kompüter Görmə qabiliyyətini görmə məhdudiyyətli insanlara kömək etmək üçün Mikrokontrollerlərdə
Sonar, Lidar və Kompüter Görmə qabiliyyətini görmə məhdudiyyətli insanlara kömək etmək üçün Mikrokontrollerlərdə

Görmə qüsurlu insanlara mövcud həllərdən daha çox kömək edə biləcək ağıllı bir "qamış" yaratmaq istəyirəm. Çubuq, ətraf səs tipli qulaqlıqlarda səs -küy salaraq istifadəçini ön və ya yan tərəfdəki əşyalar barədə xəbərdar edə biləcək. Çubuqda kiçik bir kamera və LIDAR (İşıq Algılama və Aralığı) olacaq ki, otaqdakı əşyaları və insanları tanıya bilsin və qulaqlıqdan istifadəçiyə xəbər versin. Təhlükəsizlik səbəbiylə qulaqlıq bütün səs -küyü maneə törətməyəcək, çünki bütün lazımsız səsləri süzə bilən, avtomobilin buynuzlarını və insanların danışmasını təmin edən bir mikrofon olacaq. Nəhayət sistemin GPS -i olacaq ki, istiqamətləndirə bilsin və istifadəçiyə hara gedəcəyini göstərsin.

Zəhmət olmasa Microcontroller və Outdoor Fitness yarışmalarında mənə səs verin!

Addım 1: Layihəyə ümumi baxış

Layihəyə ümumi baxış
Layihəyə ümumi baxış
Layihəyə ümumi baxış
Layihəyə ümumi baxış
Layihəyə ümumi baxış
Layihəyə ümumi baxış

Korlar üçün Dünya Girişinə görə, fiziki hərəkət kor insanlar üçün ən böyük problemlərdən biridir. Səyahət etmək və ya izdihamlı bir küçədə gəzmək çox çətin ola bilər. Ənənəvi olaraq, yeganə həll, istifadəçinin yaxınlığındakı maneələri vuraraq ətrafı taramaq üçün istifadə olunan "ağ çubuq" dan istifadə etmək idi. Daha yaxşı bir həll, kor adamın naməlum mühitdə çölə çıxıb özünü təhlükəsiz hiss etməsi üçün maneələrin yeri haqqında məlumat verərək görmə qabiliyyətli köməkçini əvəz edə biləcək bir cihaz olardı. Bu layihə zamanı bu meyarlara cavab verən kiçik bir akkumulyatorlu cihaz hazırlanmışdır. Cihaz, obyektin ölçüsünü və yerini istifadəçi ilə əlaqəli obyektlərin vəziyyətini ölçən sensorlar vasitəsi ilə aşkarlaya bilər, bu məlumatı mikro nəzarətçiyə ötürür və sonra istifadəçiyə məlumat vermək üçün onu səsə çevirir. Cihaz, mövcud kommersiya LIDAR (İşıq Algılama və Ölçmə), SONAR (Səs Naviqasiyası və Aralığı) və mikrokontrolörlərə bağlı kompüter görmə texnologiyasından istifadə edilərək hazırlanmış və qulaqlıq və ya qulaqlıqdan istifadə edərək lazımlı səsli məlumat çıxışı təmin etmək üçün proqramlaşdırılmışdır. İstifadəçinin vəziyyətini başqalarına göstərmək və əlavə təhlükəsizlik təmin etmək üçün aşkarlama texnologiyası "ağ çubuq" a daxil edilmişdir.

Addım 2: Arxa Plan Araşdırması

Fon Araşdırması
Fon Araşdırması
Fon Araşdırması
Fon Araşdırması
Fon Araşdırması
Fon Araşdırması
Fon Araşdırması
Fon Araşdırması

2017-ci ildə Ümumdünya Səhiyyə Təşkilatı, dünyada 285 milyon görmə qüsuru olduğunu, bunların 39 milyonunun tamamilə kor olduğunu bildirdi. Əksər insanlar görmə qüsurlu insanların hər gün qarşılaşdıqları problemləri düşünmürlər. Korlar üçün Dünya Girişinə görə, fiziki hərəkət kor insanlar üçün ən böyük problemlərdən biridir. Səyahət etmək və ya izdihamlı bir küçədə gəzmək çox çətin ola bilər. Bu səbəbdən, görmə qüsuru olan bir çox insan, yeni mühitlərdə gəzməyə kömək etmək üçün görmə qabiliyyətli bir dost və ya ailə üzvü gətirməyi üstün tutur. Ənənəvi olaraq, yeganə həll, istifadəçinin yaxınlığındakı maneələri vuraraq ətrafı taramaq üçün istifadə olunan "ağ çubuq" dan istifadə etmək idi. Daha yaxşı bir həll, kor adamın naməlum mühitdə çölə çıxıb özünü təhlükəsiz hiss etməsi üçün maneələrin yeri haqqında məlumat verərək görmə qabiliyyətli köməkçini əvəz edə biləcək bir cihaz olardı. IBM və Carnegie Mellon Universiteti arasında əməkdaşlıq edilən NavCog, bələdçiyə kömək etmək üçün Bluetooth işarələrindən və ağıllı telefonlardan istifadə edən bir sistem yaradaraq problemi həll etməyə çalışdı. Bununla birlikdə, həll çətin idi və geniş miqyaslı tətbiqlər üçün çox baha başa gəldi. Mənim həllim, xarici cihazlara olan ehtiyacı aradan qaldırmaq və istifadəçini gün ərzində istiqamətləndirmək üçün səs istifadə etməklə bunu həll edir (Şəkil 3). Texnologiyanı "ağ çubuq" a yerləşdirməyin üstünlüyü, ətrafdakı insanların davranışlarında dəyişikliklərə səbəb olan dünyanın qalan hissəsini istifadəçinin vəziyyətinə işarə etməsidir.

Addım 3: Dizayn tələbləri

Dizayn tələbləri
Dizayn tələbləri

Mövcud texnologiyaları araşdırdıqdan sonra, görmə qüsurlu insanlara ətraflarında gəzməyə kömək etmək üçün ən yaxşı yanaşma mövzusunda görmə mütəxəssisləri ilə mümkün həlləri müzakirə etdim. Aşağıdakı cədvəldə kiminsə cihazıma keçməsi üçün lazım olan ən vacib xüsusiyyətlər verilmişdir.

Xüsusiyyət - Təsvir:

  • Hesablama - Sistem, istifadəçi və sensorlar arasında məlumat mübadiləsi üçün sürətli bir işləmə təmin etməlidir. Məsələn, sistemin istifadəçiyə ən az 2m məsafədəki maneələri bildirə bilməsi lazımdır.
  • Əhatə dairəsi - Görmə qüsurlu insanların həyatının keyfiyyətini yaxşılaşdırmaq üçün sistemin xidmətlərini qapalı və açıq havada təmin etməsi lazımdır.
  • Zaman - Sistem gecə vaxtı olduğu kimi gündüz də yaxşı işləməlidir.
  • Aralıq - Aralıq, istifadəçi ilə sistem tərəfindən aşkarlanacaq obyekt arasındakı məsafədir. İdeal minimum məsafə 0,5 m, maksimum diapazon isə 5 m -dən çox olmalıdır. Əlavə məsafələr daha yaxşı olardı, amma hesablamaq daha çətindir.
  • Obyekt Növü - Sistem obyektlərin qəfil görünüşünü aşkar etməlidir. Sistem hərəkət edən cisimlərlə statik cisimlər arasındakı fərqi deyə bilməlidir.

Addım 4: Mühəndislik Dizaynı və Avadanlıq Seçimi

Mühəndislik Dizaynı və Avadanlıq Seçimi
Mühəndislik Dizaynı və Avadanlıq Seçimi
Mühəndislik Dizaynı və Avadanlıq Seçimi
Mühəndislik Dizaynı və Avadanlıq Seçimi
Mühəndislik Dizaynı və Avadanlıq Seçimi
Mühəndislik Dizaynı və Avadanlıq Seçimi

Bir çox fərqli komponentə baxdıqdan sonra aşağıdakı fərqli kateqoriyalardan seçilmiş hissələrə qərar verdim.

Seçilmiş hissələrin qiyməti:

  • Zungle Panter: $ 149.99
  • LiDAR Lite V3: 149.99 dollar
  • LV-MaxSonar-EZ1: 29.95 dollar
  • Ultrasonik Sensor - HC -SR04: 3.95 dollar
  • Raspberry Pi 3: 39.95 dollar
  • Arduino: 24.95 dollar
  • Əlaqə: 32.44 dollar
  • Floureon 11.1v 3s 1500mAh: 19.99 dollar
  • LM2596HV: 9.64 dollar

Addım 5: Avadanlıq seçimi: Qarşılıqlı əlaqə üsulu

Avadanlıq seçimi: Qarşılıqlı əlaqə üsulu
Avadanlıq seçimi: Qarşılıqlı əlaqə üsulu
Avadanlıq seçimi: Qarşılıqlı əlaqə üsulu
Avadanlıq seçimi: Qarşılıqlı əlaqə üsulu

Cihazla qarşılıqlı əlaqə qurmaq üçün səs nəzarətindən istifadə etmək qərarına gəldim, çünki bir çubuqda birdən çox düymənin olması görmə qüsurlu bir insan üçün çətin ola bilər, xüsusən də bəzi funksiyalar düymələrin birləşməsini tələb edirsə. Səs nəzarəti ilə istifadəçi, ehtimal olunan səhvləri azaldan qamışla əlaqə qurmaq üçün əvvəlcədən təyin edilmiş əmrlərdən istifadə edə bilər.

Cihaz: Üstünlüklər --- Eksiler:

  • Düymələr: Sağ düyməyə basıldığında heç bir əmr xətası yoxdur-Düzgün düymələrin basılmasını təmin etmək çətin ola bilər
  • Səs nəzarəti: İstifadəçi əvvəlcədən təyin edilmiş əmrlərdən istifadə edə biləcəyi üçün asandır-Yanlış tələffüz səhvlərə səbəb ola bilər

Addım 6: Avadanlıq Seçimi: Mikrokontroller

Avadanlıq seçimi: Mikrokontroller
Avadanlıq seçimi: Mikrokontroller
Avadanlıq seçimi: Mikrokontroller
Avadanlıq seçimi: Mikrokontroller
Avadanlıq seçimi: Mikrokontroller
Avadanlıq seçimi: Mikrokontroller

Cihaz, Raspberry Pi -dən aşağı qiymətə və dərinlik xəritəsini hesablamaq üçün kifayət qədər emal gücünə görə istifadə edirdi. İstifadəçilər üçün daha aşağı qiymət variantı təmin etmək üçün hazırlanan bu cihaz üçün ideal olmayacaq Intel Joule seçim variantı olardı, amma qiyməti sistemin dəyərini iki qat artırardı. Sensorlardan asanlıqla məlumat ala biləcəyi üçün arduino sistemdə istifadə edildi. BeagleBone və Intel Edison, bu aşağı qiymət sistemi üçün pis olan performans nisbətinin aşağı olması səbəbindən istifadə edilmədi.

Mikro nəzarətçi: üstünlükləri-mənfi cəhətləri:

  • Raspberry Pi: Maneələri tapmaq üçün kifayət qədər işləmə gücünə malikdir və WiFi/Bluetooth ilə birləşdirilmişdir-Sensorlardan məlumat almaq üçün bir çox variant yoxdur
  • Arduino: Kiçik sensorlardan məlumatları asanlıqla əldə edin. yəni. LIDAR, Ultrasonik, SONAR və s.-Maneələri tapmaq üçün kifayət qədər işləmə gücü yoxdur
  • Intel Edison: Sürətli prosessorla maneələri tez bir zamanda həll edə bilər-Sistemin işləməsi üçün əlavə geliştirici parçaları tələb olunur
  • Intel Joule: Bu günə qədər istehlak bazarında hər hansı bir mikrokontrolörün işləmə sürətindən iki qat yüksəkdir --- Bu sistem üçün çox yüksək qiymət və sensor qarşılıqlılığı üçün GPIO ilə qarşılıqlı əlaqə qurmaq çətindir.
  • BeagleBone Black: Ümumi Məqsədli Giriş Çıxışından (GPIO) istifadə edərək layihədə istifadə olunan sensorlar ilə kompakt və uyğun

Addım 7: Avadanlıq Seçimi: Sensorlar

Avadanlıq seçimi: Sensorlar
Avadanlıq seçimi: Sensorlar
Avadanlıq seçimi: Sensorlar
Avadanlıq seçimi: Sensorlar
Avadanlıq seçimi: Sensorlar
Avadanlıq seçimi: Sensorlar

Yüksək yer dəqiqliyi əldə etmək üçün bir neçə sensorun birləşməsindən istifadə olunur. Kinect, əsas sensordur, çünki bir anda maneələri axtara bilər. Yüngül Algılama və Ölçmə mənasını verən LIDAR, sensorun yerləşdiyi yerdən cisimlərə qədər olan məsafələri ölçmək üçün nəbzli lazer şəklində işığı istifadə edən uzaqdan algılama üsuludur; Bu sensor 40 metr (m) məsafəni izləyə bildiyi üçün istifadə olunur və müxtəlif açılarda taraya bildiyindən hər hansı bir addımın yuxarı və ya aşağıya doğru getdiyini müəyyən edə bilir. SOund Naviqasiya və Aralığı (SONAR) və Ultrasonik sensorlar, Kinectin istifadəçi üçün təhlükə yaradan yerdə dirəyi və ya zərbəni əldən verməsi halında ehtiyat izləmə olaraq istifadə olunur. 9 dərəcə Azadlıq Sensoru, istifadəçinin hansı istiqamətdə üzləşdiyini izləmək üçün istifadə olunur ki, cihaz eyni yerdə gedəndə daha yüksək dəqiqliyə yönəltmək üçün məlumat saxlaya bilsin.

Sensorlar: Üstünlüklər --- Eksiler:

  • Kinect V1: Ətrafı aşkar etmək üçün --- Yalnız bir kamera ilə 3D obyektləri izləyə bilər
  • Kinect V2: 3 infraqırmızı kamera və yüksək dəqiqlikli 3D obyekt aşkarlanması üçün Qırmızı, Yaşıl, Mavi, Dərinlik (RGB-D) kamerası var-İstiləşə bilər və soyuducu fanata ehtiyac ola bilər və digər sensorlardan daha böyükdür
  • LIDAR: 40 m-ə qədər yerləri izləyə bilən şüa-Obyektə doğru yerləşdirilməlidir və yalnız o istiqamətə baxa bilər
  • SONAR: 5 m uzaqdan izləyə bilən, lakin uzaq məsafədə olan şüa-Lələk kimi kiçik əşyalar sensoru işə sala bilər
  • Ultrasonik: 3 m-ə qədər məsafəyə malikdir və çox ucuzdur-Məsafələr bəzən qeyri-dəqiq ola bilər
  • 9 Azadlıq Sensor Dərəcəsi: İstifadəçinin oriyentasiyasını və sürətini hiss etmək üçün yaxşıdır --- Sensorlara bir şey mane olarsa, məsafə hesablamaları səhv hesablana bilər.

Addım 8: Avadanlıq Seçimi: Proqram təminatı

Avadanlıq seçimi: Proqram təminatı
Avadanlıq seçimi: Proqram təminatı
Avadanlıq seçimi: Proqram təminatı
Avadanlıq seçimi: Proqram təminatı
Avadanlıq seçimi: Proqram təminatı
Avadanlıq seçimi: Proqram təminatı

Kinect V1 sensoru ilə qurulan ilk bir neçə prototip üçün seçilmiş proqram Freenect idi, lakin o qədər də dəqiq deyildi. Kinect V2 və Freenect2 -ə keçərkən, V2 -nin HD kamerası və Kinect V1 -in tək kamerasından fərqli olaraq 3 infraqırmızı kamerası olduğu üçün izləmə nəticələri yaxşılaşdı. Kinect V1 ilə OpenNi2 istifadə edərkən, funksiyalar məhdud idi və cihazın bəzi funksiyalarına nəzarət edə bilmirdim.

Proqram təminatı: Artıları --- Eksiler:

  • Freenect: Hər şeyi idarə etmək üçün daha aşağı bir nəzarət səviyyəsinə malikdir --- Yalnız Kinect V1-i dəstəkləyir
  • OpenNi2: Kinect-dən məlumat axınından nöqtə bulud məlumatlarını asanlıqla yarada bilər-Yalnız Kinect V1-i dəstəkləyir və aşağı səviyyəli nəzarət üçün dəstəyi yoxdur.
  • Freenect2: Sensor çubuğu üçün daha aşağı bir idarəetmə səviyyəsinə malikdir --- Yalnız Kinect V2 üçün işləyir
  • ROS: Kamera funksiyalarını proqramlaşdırmaq üçün ideal olan əməliyyat sistemi --- Proqramın işləməsi üçün sürətli bir SD karta quraşdırılmalıdır.

Addım 9: Avadanlıq seçimi: Digər hissələr

Avadanlıq seçimi: Digər hissələr
Avadanlıq seçimi: Digər hissələr
Avadanlıq seçimi: Digər hissələr
Avadanlıq seçimi: Digər hissələr

Lityum İon batareyaları yüngül olması, yüksək enerji tutumuna malik olması və yenidən şarj edilə bilməsi səbəbindən seçilmişdir. Lityum ion batareyasının 18650 variantı silindrik bir forma malikdir və qamış prototipinə mükəmməl uyğun gəlir. 1 -ci prototip qamış PVC borudan hazırlanmışdır, çünki içi boşdur və qamışın ağırlığını azaldır.

Addım 10: Sistem İnkişafı: Avadanlıq Yaratmaq 1 -ci hissə

Sistem İnkişafı: Avadanlıq Yaratmaq 1 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 1 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 1 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 1 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 1 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 1 -ci hissə

Əvvəlcə Kinectin daha yüngül olması və qamışın içərisinə sığması üçün onu sökməliyik. İstifadə olunan plastik bir çox ağırlıqda olduğu üçün bütün xarici korpusu Kinect -dən çıxarmaqla başladım. Sonra bazanı çıxarmaq üçün kabeli kəsməliydim. Şəkildə göstərilən bağlayıcıdan telləri götürdüm və siqnal telləri olan bir usb kabelinə lehim etdim, digər iki əlaqə isə 12V giriş gücü üçündür. Çubuğun içindəki fanın bütün digər komponentləri soyutmaq üçün tam gücdə çalışmasını istədiyim üçün fanı Kinect -dən kəsib Raspberry Pi -dən 5V -ə bağladım. LiDAR teli üçün kiçik bir adapter də düzəltdim ki, arada heç bir sistem olmadan birbaşa Raspberry Pi -yə qoşula bilsin.

Ağ teli təsadüfən qara telə lehimlədim, buna görə də diaqramların şəkillərinə baxmayın

Addım 11: Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə

Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə
Sistem İnkişafı: Avadanlıq Yaratmaq 2 -ci hissə

Raspberry Pi kimi 5V tələb edən bütün cihazlara güc vermək üçün bir tənzimləyici parçası yaratdım. Çıxışa bir sayğac qoyaraq və rezistoru tənzimləyicinin 5.05V təmin etməsi üçün tənzimləyicini tənzimlədim. 5V -dən bir az yüksək qoydum, çünki zaman keçdikcə batareya gərginliyi aşağı düşür və çıxış gərginliyinə bir qədər təsir edir. Batareyadan 12V tələb edən 5 cihazı işə salmağa imkan verən bir adapter də hazırladım.

Addım 12: Sistem İnkişafı: Sistemin Proqramlaşdırılması Hissə 1

Sistem İnkişafı: Sistemin Proqramlaşdırılması 1 -ci hissə
Sistem İnkişafı: Sistemin Proqramlaşdırılması 1 -ci hissə
Sistem İnkişafı: Sistemin Proqramlaşdırılması 1 -ci hissə
Sistem İnkişafı: Sistemin Proqramlaşdırılması 1 -ci hissə
Sistem İnkişafı: Sistemin Proqramlaşdırılması 1 -ci hissə
Sistem İnkişafı: Sistemin Proqramlaşdırılması 1 -ci hissə

Bu sistemin ən çətin hissələrindən biri proqramlaşdırmadır. Kinect ilə ilk dəfə oynayanda, Kinect -dən məlumat axını alan və onu nöqtə buluduna çevirən RTAB Map adlı bir proqram qurdum. Nöqtə buludu ilə, döndürülə bilən bir 3D görüntüsü yaratdı, buna görə də bütün obyektlərin yerləşdiyi dərinliyi görün. Bir müddət onunla oynadıqdan və bütün parametrləri düzəltdikdən sonra, Kinect -dən məlumat axını görməyimə icazə vermək üçün Raspberry Pi -də bir proqram quraşdırmağa qərar verdim. Yuxarıdakı son iki görüntü, Raspberry Pi-nin saniyədə təxminən 15-20 kadrda nə istehsal edə biləcəyini göstərir.

Tövsiyə: