Mündəricat:

Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərini müqayisə etmək: 20 addım (şəkillərlə)
Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərini müqayisə etmək: 20 addım (şəkillərlə)

Video: Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərini müqayisə etmək: 20 addım (şəkillərlə)

Video: Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərini müqayisə etmək: 20 addım (şəkillərlə)
Video: Arduino modulu. Giriş. 2024, Noyabr
Anonim
Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərinin müqayisəsi
Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərinin müqayisəsi
Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərinin müqayisəsi
Arduino ilə LV-MaxSonar-EZ və HC-SR04 Sonar Range Finderlərinin müqayisəsi

Bir çox layihənin (xüsusən robotların) real vaxtda bir obyektə olan məsafəni ölçməsini tələb etdiyini və ya bundan faydalana biləcəyini görürəm. Sonar diapazonu tapanlar nisbətən ucuzdur və Arduino kimi bir mikro nəzarətçi ilə asanlıqla əlaqələndirilə bilər.

Bu Təlimat, Arduino-ya necə bağlanacağını, onlardan dəyərləri oxumaq üçün hansı kodun tələb olunduğunu və fərqli vəziyyətlərdə bir-birlərinə necə 'ölçdüklərini' göstərən sonar diapazonu tapan iki cihazı müqayisə edir. Buradan ümid edirəm ki, növbəti layihənizdə ən uyğun cihazı istifadə etməyinizə kömək edəcək iki cihazın müsbət və mənfi cəhətlərini anlayacaqsınız.

Son dərəcə populyar olan HC-SR04 (böcək gözü) cihazını daha az yayılmış LV-MaxSonar-EZ cihazı ilə müqayisə etmək istədim ki, nə vaxt digərindən istifadə etmək istəyim. Tapıntılarımı və quruluşumu bölüşmək istədim ki, ikisi ilə sınaq keçirəsiniz və növbəti layihənizdə hansından istifadə edəcəyinizə qərar verəsiniz.

Niyə bu iki…

Niyə HC-SR04? 'Bug-Eye' HC-SR04 son dərəcə populyardır-bir neçə səbəbdən:

  • Ucuzdur - toplu olaraq alınsa 2 dollar və ya daha azdır
  • İnterfeys qurmaq nisbətən asandır
  • Bir çox, bir çox layihələr bundan istifadə edir - buna görə də yaxşı bilinir və yaxşı başa düşülür

Niyə LV-MaxSonar-EZ?

  • İnterfeys qurmaq çox asandır
  • Bir layihəyə daxil etmək üçün yaxşı/asan bir forma faktoruna malikdir
  • Fərqli ölçü tələblərinə cavab verən 5 versiyası var (məlumat cədvəlinə baxın)
  • HC-SR04-dən (adətən) çox daha dəqiq və etibarlıdır
  • Əlverişlidir - 15-20 dollar

Əlavə olaraq, ümid edirəm ki, layihələrinizdə müqayisə etmək üçün yazdığım Arduino kodunda, hətta aralıq tapıcı tətbiqlərindən kənarda bit və parçalar tapacaqsınız.

Fərziyyələr:

  • Arduino və Arduino IDE ilə tanışsınız
  • Arduino IDE, üstünlük verdiyiniz inkişaf maşınında quraşdırılıb və işləyir (PC/Mac/Linux)
  • Proqramları yükləmək və işə salmaq və ünsiyyət qurmaq üçün Arduino IDE -dən Arduino -ya bir bağlantınız var

Lazım gələrsə, bu işdə sizə kömək edəcək Təlimatlar və digər mənbələr var.

Təchizat

  • HC-SR04 'Bug-Eye' Range Finder
  • LV-MaxSonar-EZ (0, 1, 2, 3, 4-'1' istifadə edirəm, amma bütün versiyalar eyni interfeysdədir)
  • Arduino UNO
  • Lehimsiz Çörək Paneli
  • Pin Başlığı - 7 pin 90 ° (MaxSonar cihazı üçün 180 ° istifadə üçün aşağıya baxın)
  • Şerit kabel tullanan - 5 telli, kişi -kişi
  • Şerit kabel tullanan - 2 telli, kişi -kişi
  • Jumper tel - kişi -kişi
  • Qoşma teli - qırmızı və qara (Arduinodan çörək taxtasına və çörək taxtasından cihazlara qədər güc üçün)
  • Arduino UNO -ya qoşulmaq üçün Arduino IDE və USB kabeli olan kompüter

* MaxSonar bir başlıq ilə birlikdə gəlmir, buna görə də layihəniz üçün ən uyğun başlığı istifadə edə bilərsiniz. Bu Təlimat üçün çörək taxtasına qoşulmağı asanlaşdırmaq üçün 90 ° başlıq istifadə etdim. Bəzi layihələrdə 180 ° (düz) başlıq daha yaxşı ola bilər. Bunu necə bağlayacağınızı göstərmək üçün bir fotoşəkil əlavə edirəm ki, onları dəyişdirməyəsiniz. 180 ° bir başlıq istifadə etmək istəsəniz, fotoşəkildə göstərildiyi kimi qoşulmaq üçün əlavə 7 telli kişi-qadın lentli kabel tullananına ehtiyacınız olacaq.

Git Hub Deposu: Layihə Faylları

Addım 1: Chase…

Chase…
Chase…

Bu iki fantastik cihazla öz təcrübənizlə məşğul ola biləcəyiniz şeyləri necə bağlayacağınıza dair detallara girməzdən əvvəl, bu Təlimatçının sizə kömək edəcəyinə ümid etdiyim bir neçə şeyi təsvir etmək istədim.

MaxSonar cihazı HC-SR04 cihazı ilə müqayisədə daha az istifadə edildiyindən və daha az başa düşüldüyündən göstərmək istədim:

  • MaxSonar cihazını mikro nəzarətçiyə necə bağlamaq olar (bu halda bir Arduino)
  • MaxSonar cihazının fərqli çıxışlarından ölçüləri necə götürmək olar
  • MaxSonar cihazını HC-SR04 cihazı ilə müqayisə edin
  • Fərqli səthləri olan cisimlərin məsafəsini ölçmək qabiliyyətini sınayın
  • Niyə bir cihazı digərindən üstün tuta bilərsiniz (və ya hər ikisini tandemdə istifadə edin)

Ümid edirəm bu Təlimat bu təqibdə sizə kömək edəcək…

Addım 2: Başlayın - Arduino -Breadboard Quraşdırması

Başlamaq - Arduino -Breadboard Quraşdırması
Başlamaq - Arduino -Breadboard Quraşdırması

Arduino ilə prototip hazırlayırsınızsa, ehtimal ki, artıq rahat olduğunuz bir Arduino-Breadboard qurğusuna sahibsiniz. Əgər belədirsə, bu Təlimat üçün istifadə edə biləcəyinizə əminəm. Əks təqdirdə, minanı bu şəkildə qurdum - bu və gələcək layihələr üçün kopyalayın.

  1. Arduino UNO və kiçik bir simsiz çörək taxtasını alt hissəsində rezin ayaqları olan 3-3/8 "x 4-3/4" (8.6 x 12.0 sm) plastik parçaya yapışdırıram.
  2. Arduinodan +5V və GND-ni çörək taxtasının elektrik paylama zolağına bağlamaq üçün qırmızı və qara 22-AWG bağlama teli istifadə edirəm.
  3. Güc səs-küyünü azaltmağa kömək etmək üçün elektrik-torpaq paylama zolağına 10µF tantal kondansatör daxil edirəm (lakin bu layihə bunu tələb etmir)

Bu, prototip etmək asan olan gözəl bir platforma təmin edir.

Addım 3: LV-MaxSonar-EZ-ni bağlayın

LV-MaxSonar-EZ-ni bağlayın
LV-MaxSonar-EZ-ni bağlayın
LV-MaxSonar-EZ-ni bağlayın
LV-MaxSonar-EZ-ni bağlayın
LV-MaxSonar-EZ-ni bağlayın
LV-MaxSonar-EZ-ni bağlayın

MaxSonar cihazına lehimlənmiş 90 ° başlıq ilə çörək taxtasına qoşmaq asandır. 5 pinli lent kabeli, MaxSonar -ı Arduino -ya diaqramda göründüyü kimi bağlayır. Şerit kabelinə əlavə olaraq, cihazı elektrik enerjisi ilə təmin etmək üçün elektrik paylama dəmir yolundan qısa qırmızı və qara bağlama tellərindən istifadə edirəm.

Kablolama:

MaxSonar Arduino Rəng
1 (BW) Güc-GND Sarı
2 (PW) Rəqəmsal-5 Yaşıl
3 (AN) Analog-0 Mavi
4 (RX) Rəqəmsal-3 Bənövşəyi
5 (TX) Rəqəmsal-2 Boz
6 (+5) +5 BB-PWR dəmir yolu Qırmızı
7 (GND) GND BB-PWR Dəmiryolu Qara

Qeyd:

Bu Təlimatda istifadə olunan bağlantıların sayının, layihəniz üçün MaxSonar -ı nəzərdən keçirməyinizə imkan verməyin. Bu Təlimat, necə işlədiyini göstərmək və bir-biri ilə və HC-SR04 cihazı ilə müqayisə etmək üçün bütün MaxSonar interfeys seçimlərindən istifadə edir. Müəyyən bir istifadə üçün (interfeys seçimlərindən birini istifadə edərək) bir layihə ümumiyyətlə bir və ya iki interfeys sancağından istifadə edəcək (üstəgəl güc və torpaq).

Addım 4: HC-SR04-ü bağlayın

HC-SR04 tipik olaraq 90 ° bir başlıq ilə təchiz olunmuşdur, buna görə onu taxtaya taxmaq asandır. 2 pinli lent kabeli daha sonra diaqramda göründüyü kimi HC-SR04-ü Arduino-ya bağlayır. Şerit kabelinə əlavə olaraq, cihazı elektrik enerjisi ilə təmin etmək üçün elektrik paylama dəmir yolundan qısa qırmızı və qara bağlama tellərindən istifadə edirəm.

HC-SR04 Arduino Rəng
1 (VCC) +5 BB-PWR Dəmiryolu Qırmızı
2 (TRIG) Rəqəmsal-6 Sarı
3 (ECHO) Rəqəmsal-7 Narıncı
4 (GND) GND BB-PWR Dəmiryolu Qara

Addım 5: 'HC-SR04' Seçim Seçicisini bağlayın

Bu layihəyə başlayanda məqsədim MaxSonar cihazının fərqli interfeys seçimlərini sınamaq idi. Bunu işə saldıqdan sonra onu hər yerdə mövcud olan HC-SR04 (bugeye) cihazı ilə müqayisə etməyin gözəl olacağına qərar verdim. Bununla birlikdə, daxil edilmədən çalıştır/test edə bilmək istədim, buna görə koda bir seçim/test əlavə etdim.

Kod, HC-SR04 cihazının ölçmə oxunuşuna və çıxışına daxil olub-olmadığını öyrənmək üçün giriş pinini yoxlayır.

Diaqramda bu bir keçid olaraq göstərilir, ancaq çörək taxtasında sadəcə bir keçid teli istifadə edirəm (fotoşəkillərdə göründüyü kimi). Tel GND-yə bağlıdırsa, HC-SR04 ölçülərə daxil ediləcəkdir. Kod Arduino'da 'yuxarı çəkir' (girişi yüksək/doğru edir), belə ki, aşağı çəkilməsə (GND-ə qoşulsa) HC-SR04 ölçülməyəcək.

Bu Təlimat iki cihazın müqayisəsinə çevrilmiş olsa da, layihənizə fərqli cihazları/seçimləri necə daxil edə biləcəyinizi göstərmək üçün bunu yerində qoymağa qərar verdim.

Çörək lövhəsi Arduino Rəng
GND BB-PWR Dəmiryolu Rəqəmsal-12

Addım 6: Hər şeyi Çalışdırın …

Hamısını İşlətmək…
Hamısını İşlətmək…
Hamısını İşlətmək…
Hamısını İşlətmək…
Hamısını İşlətmək…
Hamısını İşlətmək…

İndi hər şey bağlandığı üçün - işləri düzəltməyin vaxtıdır!

'Varsayımlarda' qeyd edildiyi kimi - Arduino IDE -nin necə işlədiyini və bir Arduinonun necə proqramlaşdırılacağını izah etməyəcəyəm.

Aşağıdakı bölmələr bu layihəyə daxil olan Arduino kodunu parçalayır.

Zəhmət olmasa tam arxivi Arduino inkişaf etdirmək üçün istifadə etdiyiniz bir yerə açın. 'MaxSonar-outputs.ino` kodunu Arduino IDE-yə yükləyin və işə başlayaq!

Addım 7: Layihə Layihəsi

Layihədə LV-MaxSonar-EZ cihazı, dövrə diaqramı, README və Arduino kodu haqqında məlumatlar var. Dövrə diaqramı Fritzing formatında olduğu kimi-p.webp

Addım 8: Kod Giriş…

Bu Təlimat kitabında kodun hər tərəfini keçə bilmərəm. Yüksək səviyyəli bəzi detalları əhatə edirəm. Koddakı ən yüksək səviyyəli şərhləri oxumağı və üsulları araşdırmağı məsləhət görürəm.

Şərhlər burada təkrar etməyəcəyim bir çox məlumat verir.

'Quraşdırma' kodunda qeyd etmək istədiyim bir neçə şey var …

  • `_DEBUG_OUTPUT` - dəyişən və #define ifadələr
  • İnterfeys üçün istifadə olunan Arduino 'pinləri' anlayışları
  • Hesablamalarda istifadə olunan dönüşüm faktorlarının tərifləri

Hata ayıklama kodu boyunca istifadə olunur və bunun dinamik olaraq necə açılacağını/söndürülməsini göstərəcəyəm.

'Təriflər', bu kodu digər layihələrdə istifadə etməyi asanlaşdırmaq üçün Arduino pinləri və dönüşümləri üçün istifadə olunur.

Hata ayıklanır…

'Hata Ayıklama' bölməsi, tələb edildikdə seriya çıxışına ayıklama məlumatlarını daxil etməyi asanlaşdıran bir dəyişən və bəzi makroları təyin edir.

"_DEBUG_OUTPUT" boolean dəyişən kodda false olaraq təyin olunur (doğru olaraq təyin edilə bilər) və "DB_PRINT…" makrolarında test olaraq istifadə olunur. Kodda dinamik olaraq dəyişdirilə bilər ("setDebugOutputMode" metodunda göründüyü kimi).

Qlobal…

Təriflərdən sonra kod bir neçə qlobal dəyişən və obyekt yaradır və işə salır.

  • SoftwareSerial (növbəti bölməyə baxın)
  • _loopCount - Hər 'n' sətirində bir başlıq çıxarmaq üçün istifadə olunur
  • _inputBuffer - İşləmə variantları üçün serial/terminal girişini toplamaq üçün istifadə olunur (ayıklama/söndürmə)

Addım 9: Arduino Software-Serial…

MaxSonar interfeys seçimlərindən biri serial məlumat axınıdır. Bununla birlikdə, Arduino UNO yalnız bir serial məlumat bağlantısı təmin edir və Arduino IDE (ana kompüter) ilə əlaqə qurmaq üçün USB portu ilə istifadə olunur/paylaşılır.

Xoşbəxtlikdən, Arduino IDE-yə daxil olan bir serial-i/o interfeysini həyata keçirmək üçün bir cüt Arduino rəqəmsal G/Ç pinindən istifadə edən bir kitabxana komponenti var. MaxSonar seriyalı interfeysi 9600 BAUD istifadə etdiyindən, bu 'proqram' interfeysi mükəmməl şəkildə ünsiyyəti idarə edə bilir.

Arduino-Mega (və ya birdən çox HW seriyalı portu olan digər cihaz) istifadə edənlər üçün, fiziki seriyalı portdan istifadə etmək və SW-Seriala olan ehtiyacı aradan qaldırmaq üçün kodu tənzimləməkdən çekinmeyin.

"Quraşdırma" metodu, MaxSonar cihazı ilə istifadə ediləcək "SoftwareSerial" interfeysini işə salır. Yalnız qəbul (RX) lazımdır. MaxSonar çıxışı ilə uyğunlaşmaq üçün interfeys "tərs" dir.

Addım 10: Kod - Quraşdırma

Yuxarıda təsvir edildiyi kimi, "quraşdırma" üsulu "SoftwareSerial" interfeysini və fiziki serial interfeysini işə salır. Arduino G/Ç pinlərini konfiqurasiya edir və başlıq göndərir.

Addım 11: Kod - Döngə

`Loop` kodu aşağıdakılardan keçir:

  • Bir başlıq çıxarın (ayıklama və Plotter üçün istifadə olunur)
  • Ölçmək üçün MaxSonar -ı işə salın
  • MaxSonar Pulse-Width dəyərini oxuyun
  • MaxSonar Serial-Data dəyərini oxuyun
  • MaxSonar Analog dəyərini oxuyun
  • 'HC-SR04' seçimini yoxlayın və aktiv olduqda:

    HC-SR04 cihazını işə salın və oxuyun

  • Verilənləri Serial Plotter tərəfindən istifadə edilə bilən ayrılmış bir sekmədə çıxarın
  • Başqa bir ölçmə aparmaq üçün kifayət qədər vaxt bitənə qədər gözləyin

Addım 12: Kod - MaxSonar -ı işə salın. PW dəyərini oxuyun

MaxSonar iki rejimə malikdir: 'tetiklenen' və 'davamlı'

Bu Təlimat "tetiklenen" rejimdən istifadə edir, lakin bir çox layihə "fasiləsiz" rejimdən istifadə edə bilər (məlumat cədvəlinə baxın).

'Tetiklenen' rejimi istifadə edərkən, ilk etibarlı çıxış Pulse-Width (PW) çıxışından gəlir. Bundan sonra qalan çıxışlar etibarlıdır.

`TiggerAndReadDistanceFromPulse`, MaxSonar cihazındakı tetik pimini çəkir və nəticədə nəbz genişliyi məsafə dəyərini oxuyur.

Bir çox digər sonar cihazlarından fərqli olaraq, MaxSonar gediş-dönüş dönüşümünü idarə edir, buna görə oxunan məsafə hədəfə olan məsafədir.

Bu üsul, cihazın digər çıxışlarının etibarlı olması üçün kifayət qədər gecikdirir (serial, analoq).

Addım 13: Kod - MaxSonar Serial Dəyərini oxuyun

MaxSonar işə salındıqdan sonra (və ya 'fasiləsiz' rejimdə olduqda), seriya çıxışı seçimi aktiv olarsa ('BW - Pin -1' nəzarət vasitəsi ilə) "R nnn" şəklində bir serial məlumat axını göndərilir CARRIAGE-RETURN '\ r' tərəfindən. 'Nnn', obyekt üçün düym dəyəridir.

"ReadDistanceFromSerial" metodu serial məlumatlarını (Software Serial portundan) oxuyur və 'nnn' dəyərini onluğa çevirir. Bir seriya dəyəri alınmadığı təqdirdə, uğursuz təhlükəsiz bir zaman aşımı daxildir.

Addım 14: Kod - MaxSonar Analog Dəyərini oxuyun

MaxSonar analog portu son ölçülən məsafəyə mütənasib olaraq çıxış gərginliyi təmin edir. Bu dəyər cihaz işə salındıqdan sonra istənilən vaxt oxuna bilər. Dəyər, son məsafənin oxunmasından (işə salınan və ya davamlı rejim) 50mS ərzində yenilənir.

Dəyər hər düym üçün (Vcc/512) təşkil edir. Beləliklə, Arduinodan 5 voltluq bir Vcc ilə dəyər ~ 9.8mV/in olacaq. "ReadDistanceFromAnalog" metodu Arduino analoq girişindəki dəyəri oxuyur və "düym" dəyərinə çevirir.

Addım 15: Kod - Tetikleyin və HC -SR04 oxuyun

HC-SR04 oxumaq üçün kitabxanalar olsa da, bəzilərinin sınaqdan keçirdiyim müxtəlif cihazlarla etibarsız olduğunu gördüm. "Sr04ReadDistance" metoduna daxil etdiyim kodu sadə və daha etibarlı hesab etdim (ucuz HC-SR04 cihazı ola biləcəyi qədər).

Bu üsul HC-SR04 cihazını təyin edir və işə salır, sonra isə nəbz eninin ölçülməsini gözləyir. Pulse genişliyinin ölçülməsi, HC-SR04 hədəfi tapa bilmədiyi zaman çox uzun bir nəbz müddəti ilə məşğul olmaq üçün bir fasilə daxildir. Hədəf məsafəsi ~ 10 futdan çox olan bir nəbz genişliyinin heç bir obyekt və ya tanınmayan bir cisim olduğu qəbul edilir. Zaman aşımı əldə edildikdə '0' dəyəri məsafə olaraq qaytarılır. Bu 'məsafə' (nəbz genişliyi) #define dəyərlərindən istifadə etməklə tənzimlənə bilər.

Pulse genişliyi, obyektə olan məsafə olaraq geri qaytarılmadan əvvəl gediş-dönüş məsafəsinə çevrilir.

Addım 16: Kod - Arduino IDE Serial Plotter Dəstəyi

Kod - Arduino IDE Serial Plotter Dəstəyi
Kod - Arduino IDE Serial Plotter Dəstəyi

İndi çıxış üçün!

`Loop` metodu iki cihazdan məsafə ölçməsinin toplanmasını tetikler - amma bununla ne edeceyik?

Əlbətdə ki, konsola baxılması üçün göndərəcəyik - amma daha çoxunu istəyirik!

Arduino IDE, Serial Plotter interfeysini də təmin edir. İki cihazımızın çıxışlarından obyektimizə olan məsafənin real vaxt qrafikini təmin etmək üçün bundan istifadə edəcəyik.

Serial Plotter, dəyər etiketləri olan bir başlığı və sonra qrafik olaraq qurulacaq çoxlu ayrılmış dəyərləri qəbul edir. Dəyərlər müntəzəm olaraq çıxarılırsa (hər 'saniyədə bir dəfə), qrafik zamanla obyektə olan məsafənin görüntüsünü verir.

"Loop" metodu, MaxSonar-dan üç dəyəri və HC-SR04-dən Serial Plotter ilə istifadə edilə bilən sekmədən ayrılmış bir formatda çıxış edir. Hər 20 cərgədə bir dəfə başlıq çıxır (Serial Plotterin axın ortasında aktiv olması halında).

Bu, maneəyə qədər olan məsafəni görselleştirmenize və iki cihazın qaytardığı dəyərlər arasındakı fərqi görməyə imkan verir.

Addım 17: Kod - Hata Ayıklama …

Kod - Hata Ayıklanır …
Kod - Hata Ayıklanır …
Kod - Hata Ayıklanır …
Kod - Hata Ayıklanır …

Ayıklama bir zərurətdir. Bir şey gözlənildiyi kimi işləmədikdə problemi necə izləyə bilərsiniz?

İlk anlayış xətti, baş verənləri göstərə biləcək bəzi 'sadə' mətn çıxışlarıdır. Bunlar bir problemi izləmək üçün lazım olduqda və harada koda əlavə edilə bilər və problem həll edildikdən sonra silinə bilər. Ancaq kodu əlavə etmək və silmək çox vaxt aparır və özlüyündə başqa problemlərə yol aça bilər. Bəzən mənbə kodunu tək qoyaraq dinamik olaraq aktivləşdirmək və söndürmək daha yaxşıdır.

Bu Təlimat kitabına Arduino IDE Serial Monitorundan oxunan girişdən dinamik olaraq ayıklama çapı (serial çıxışı) ifadələrini aktivləşdirmək və söndürmək üçün bir mexanizm daxil etdim (qarşıdakı buraxılışda Serial Plotterin də bu girişi təmin edəcəyi gözlənilir).

'_DEBUG_OUTPUT` boolean kodu daxilində istifadə edilə bilən bir çox #define çap üsulunda istifadə olunur. _DEBUG_OUTPUT dəyişəninin dəyəri çapı (çıxışı göndərmə) təmin etmək və ya etməmək üçün istifadə olunur. "SetDebugOutputMode" metodunun etdiyi kimi, dəyər kod daxilində dinamik olaraq dəyişdirilə bilər.

"SetDebugOutputMode" metodu, serial girişindən alınan girişə əsaslanaraq "loop" dan çağırılır. Ayarlama rejimini aktiv etmək/söndürmək üçün "ayıklama açma/söndürmə | doğru/yanlış" ilə uyğun olub olmadığını görmək üçün giriş təhlil edilir.

Addım 18: Nəticə

Ümid edirəm ki, bu sadə aparat qurğusu və nümunə kodu HC-SR04 ilə LV-MaxSonar-EZ cihazları arasındakı fərqləri anlamağa kömək edə bilər. Hər ikisinin istifadəsi çox asandır və inanıram ki, hər birinin öz üstünlükləri var. Birindən daha çox nə vaxt istifadə edəcəyinizi bilmək uğurlu bir layihə üçün köməkçi ola bilər.

BTW-LV-MaxSonar-EZ istifadə edərək bir obyektə olan məsafəni dəqiq ölçmək üçün çox asan bir üsula işarə etdim … Analog çıxışdan (bir tel) və fasiləsiz ölçmə rejimindən istifadə edərək lazım olduqda məsafəni oxumaq olar. kodu "readDistanceFromAnalog" da birbaşa Arduino analoq girişindən. Bir tel və (qatılaşdırılmış) bir kod xətti!

Addım 19: Alternativ MaxSonar Bağlantısı (180 ° Başlıq istifadə edərək)

Alternativ MaxSonar Bağlantısı (180 ° Başlıq istifadə edərək)
Alternativ MaxSonar Bağlantısı (180 ° Başlıq istifadə edərək)
Alternativ MaxSonar Bağlantısı (180 ° Başlıq istifadə edərək)
Alternativ MaxSonar Bağlantısı (180 ° Başlıq istifadə edərək)
Alternativ MaxSonar Bağlantısı (180 ° Başlıq istifadə edərək)
Alternativ MaxSonar Bağlantısı (180 ° Başlıq istifadə edərək)

Qeyd etdiyim kimi, MaxSonar bağlı bir başlıqla gəlmir. Beləliklə, layihəniz üçün ən uyğun olan hər hansı bir əlaqədən istifadə edə bilərsiniz. Bəzi hallarda 180 ° (düz) başlıq daha uyğun ola bilər. Əgər belədirsə, bu Təlimatla bundan necə istifadə edə biləcəyinizi tez göstərmək istədim. Bu illustatration, çörək taxtasına kişi-qadın lent kabeli ilə bağlanan düz bir başlığı olan MaxSonar-ı və sonra məqalənin qalan hissəsində təsvir edildiyi kimi Arduino-ya qoşulduğunu göstərir.

Addım 20: Arduino Kodu

Arduino kodu, Sonar Range-Finder müqayisəsində layihənin 'MaxSonar-outputs' qovluğundadır

Tövsiyə: