Мазмұны:

LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру: 20 қадам (суреттермен)
LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру: 20 қадам (суреттермен)

Бейне: LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру: 20 қадам (суреттермен)

Бейне: LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру: 20 қадам (суреттермен)
Бейне: Ultrasonic Robot Sensors | MaxBotix Inc. 2024, Қараша
Anonim
LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру
LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру
LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру
LD-MaxSonar-EZ және HC-SR04 Sonar диапазондарын Arduino көмегімен салыстыру

Менің ойымша, көптеген жобалар (әсіресе роботтар) объектіге дейінгі қашықтықты нақты уақытта өлшеуді қажет етеді немесе одан пайда көре алады. Sonar диапазонының табушылары салыстырмалы түрде арзан және оларды Arduino сияқты микроконтроллерге оңай қосуға болады.

Бұл нұсқаулықта Sonar диапазонын табуға болатын екі қондырғы салыстырылады, оларды Arduino-ға қалай қосу керектігін, олардан мәндерді оқу үшін қандай код қажет екенін және олардың әр түрлі жағдайларда бір-біріне қалай «өлшенетінін» көрсетеді. Осыдан сіз келесі жобада ең қолайлы құрылғыны пайдалануға көмектесетін екі құрылғының артықшылықтары мен кемшіліктері туралы түсінік аласыз деп үміттенемін.

Мен HC-SR04 (қате көзінен) өте танымал құрылғыны LV-MaxSonar-EZ құрылғысымен салыстырғым келді, сонда мен екіншісін емес, біреуін қалай қолданғым келеді. Мен өз нәтижелеріммен және қондырғылармен бөліскім келді, осылайша сіз екеуімен тәжірибе жасап, келесі жобада қайсысын қолдану керектігін шеше аласыз.

Неліктен бұл екі…

Неліктен HC-SR04? HC-SR04 'Bug-Eye' өте танымал-бірнеше себептерге байланысты:

  • Бұл арзан - жаппай сатып алынған жағдайда 2 доллар немесе одан аз
  • Интерфейске кіру салыстырмалы түрде оңай
  • Көптеген, көптеген жобалар оны қолданады - сондықтан ол жақсы белгілі және жақсы түсініледі

Неліктен LV-MaxSonar-EZ?

  • Интерфейске кіру өте оңай
  • Жобаға қосудың жақсы/жеңіл форм-факторы бар
  • Ол әр түрлі өлшеу талаптарына жауап беретін 5 нұсқаға ие (мәліметтер кестесін қараңыз)
  • Бұл (әдетте) HC-SR04 қарағанда әлдеқайда дәл және сенімді
  • Бұл қол жетімді - 15 доллардан 20 долларға дейін

Бұған қоса, мен салыстырған кезде Arduino коды бойынша бөлшектер мен бөліктерді сіздің жобаларыңызда пайдалы деп ойлаймын, тіпті диапазон іздеуші қосымшалардан тыс.

Болжамдар:

  • Сіз Arduino және Arduino IDE -мен таныссыз
  • Arduino IDE сіздің таңдаулы машинаңызда орнатылған және жұмыс істейді (PC/Mac/Linux)
  • Сізде Arduino IDE -ден Arduino -ға бағдарламалар жүктеу және іске қосу және байланыс орнату үшін байланыс бар

Қажет болған жағдайда сізге көмектесетін нұсқаулықтар мен басқа да ресурстар бар.

Жабдықтар

  • HC-SR04 «қате-көз» ауқымын іздегіш
  • LV-MaxSonar-EZ (0, 1, 2, 3, 4-мен '1' пайдаланамын, бірақ барлық нұсқалар интерфейсі бірдей)
  • Arduino UNO
  • Дәнекерленген тақта
  • Түйіршікті тақырып - 7 істікше 90 ° (MaxSonar құрылғысы үшін 180 ° пайдалану үшін төмендегі * қараңыз)
  • Таспалы кабельді қосқыш - 5 сым, еркек -еркек
  • Таспалы кабельді қосқыш - 2 сым, еркек -еркек
  • Өткізгіш сым - еркек -еркек
  • Қосылатын сым - қызыл және қара (Arduino -дан нанға және нанға арналған құрылғыларға арналған қуат үшін)
  • Arduino UNO -ға қосылу үшін Arduino IDE және USB кабелі бар компьютер

* MaxSonar тақырыбы бекітілмеген, сондықтан сіз өзіңіздің жобаңызға сәйкес келетін тақырыпты пайдалана аласыз. Бұл нұсқаулық үшін мен нан тақтасына қосуды жеңілдету үшін 90 ° тақырыпты қолдандым. Кейбір жобаларда 180 ° (тікелей) тақырып жақсы болуы мүмкін. Мен оны қалай қосуға болатынын көрсететін фотосуретті қосамын, сондықтан оларды ауыстыруға болмайды. Егер сіз 180 ° тақырыпты қолданғыңыз келсе, менің фотода көрсетілгендей қосылу үшін сізге қосымша 7 сымды ерлер мен әйелдердің кабельді қосқышы қажет болады.

Git Hub репозиторийі: жоба файлдары

1 -қадам: Қуыс…

The Chase…
The Chase…

Біз осы екі фантастикалық құрылғыда өзіңіз тәжірибе жасай алатын нәрселерді қалай қосуға болатыны туралы егжей -тегжейлі білмес бұрын, мен бұл нұсқаулық сізге көмектеседі деп үміттенетін бірнеше нәрсені сипаттағым келді.

MaxConar құрылғысы HC-SR04 құрылғысына қарағанда аз қолданылғандықтан және түсініксіз болғандықтан, мен көрсеткім келді:

  • MaxSonar құрылғысын микроконтроллерге қалай қосуға болады (бұл жағдайда Arduino)
  • MaxSonar құрылғысының әр түрлі шығуларынан өлшемдерді қалай алуға болады
  • MaxSonar құрылғысының интерфейсін HC-SR04 құрылғысымен салыстырыңыз
  • Әр түрлі беттері бар заттардың арақашықтығын өлшеу қабілетін тексеру
  • Неліктен сіз бір құрылғыны екіншісінен таңдай аласыз (немесе екеуін де қатар қолданыңыз)

Нұсқау сізге осы табысқа көмектеседі деп үміттенемін …

2 -қадам: Жұмысты бастау - Arduino -Breadboard орнату

Жұмысты бастау - Arduino -Breadboard орнату
Жұмысты бастау - Arduino -Breadboard орнату

Егер сіз Arduino-мен прототип құрған болсаңыз, сізге ыңғайлы Arduino-Breadboard қондырғысы бар шығар. Егер солай болса, сіз оны осы нұсқаулық үшін қолдана алатыныңызға сенімдімін. Егер олай болмаса, мен кенішті осылай құрдым - оны осы және болашақ жобалар үшін көшіріп алыңыз.

  1. Мен Arduino UNO мен кішкене сымсыз нан тақтасын 3-3/8 «x 4-3/4» (8,6 x 12,0 см) пластмассаның түбіне резеңке табанымен бекітемін.
  2. Мен қызыл және қара 22-AWG қосқыш сымын +5V және GND-ті Arduino-дан тақтаның қуат тарату жолағына қосу үшін қолданамын.
  3. Мен қуат шуын азайтуға көмектесу үшін жердегі тарату жолағында 10 мкФ тантал конденсаторын қосамын (бірақ бұл жоба қажет емес)

Бұл прототипі оңай болатын жақсы платформаны қамтамасыз етеді.

3-қадам: LV-MaxSonar-EZ сымын қосыңыз

LV-MaxSonar-EZ байланыстырыңыз
LV-MaxSonar-EZ байланыстырыңыз
LV-MaxSonar-EZ байланыстырыңыз
LV-MaxSonar-EZ байланыстырыңыз
LV-MaxSonar-EZ байланыстырыңыз
LV-MaxSonar-EZ байланыстырыңыз

MaxSonar құрылғысына дәнекерленген 90 ° тақырыппен оны тақтаға қосу оңай. 5 істікшелі таспалы кабель MaxSonar -ды Arduino -ға диаграммада көрсетілгендей қосады. Таспалы кабельден басқа, мен құрылғыны қуатпен қамтамасыз ету үшін электр тарату рельсінен қызыл және қара ілмек сымының қысқа бөліктерін қолданамын.

Сымдар:

MaxSonar Ардуино Түс
1 (BW) Power-GND Сары
2 (PW) Сандық-5 Жасыл
3 (AN) Аналог-0 Көк
4 (RX) Сандық-3 Күлгін
5 (TX) Сандық-2 Сұр
6 (+5) +5 BB-PWR рельсі Қызыл
7 (GND) GND BB-PWR рельсі Қара

Ескерту:

Нұсқаулықта пайдаланылатын қосылымдардың саны сіздің жобаңызға MaxSonar қарастыруға кедергі жасамаңыз. Бұл нұсқаулық MaxSonar интерфейсінің барлық опцияларын олардың қалай жұмыс істейтінін көрсету және оларды бір-бірімен және HC-SR04 құрылғысымен салыстыру үшін қолданады. Белгілі бір мақсат үшін (интерфейс опцияларының бірін қолдана отырып) жоба әдетте интерфейстің бір немесе екі түйреуішін (плюс қуат пен жерге) қолданады.

4-қадам: HC-SR04 сымын қосыңыз

HC-SR04 әдетте 90 ° тақырыппен бірге келеді, сондықтан оны тақтаға қосу оңай. 2 істікшелі таспа кабелі HC-SR04-ті диаграммада көрсетілгендей Arduino-ға қосады. Таспалы кабельден басқа, мен құрылғыны қуатпен қамтамасыз ету үшін электр тарату рельсінен қызыл және қара ілмек сымының қысқа бөліктерін қолданамын.

HC-SR04 Ардуино Түс
1 (VCC) +5 BB-PWR рельсі Қызыл
2 (TRIG) Сандық-6 Сары
3 (ЭХО) Сандық-7 апельсин
4 (GND) GND BB-PWR рельсі Қара

5-қадам: 'HC-SR04' опцион селекторын қосыңыз

Мен бұл жобаны бастаған кезде менің мақсатым MaxSonar құрылғысының әр түрлі интерфейс нұсқаларын тексеру болды. Оны іске қосқаннан кейін мен оны барлық жерде HC-SR04 (қате) құрылғысымен салыстыру жақсы болар деп шештім. Дегенмен, мен оны қоспай -ақ іске қосуға/сынауға мүмкіндік алғым келді, сондықтан мен кодқа опцияны/тестті қостым.

Код HC-SR04 құрылғысының өлшеу көрсеткіші мен шығысына қосылуы керектігін білу үшін кіріс түйреуішін тексереді.

Диаграммада бұл коммутатор ретінде көрсетілген, бірақ мен тақтада жай ғана секіргіш сымды қолданамын (суреттерде көрсетілгендей). Егер сым GND-ге қосылған болса, HC-SR04 өлшеуге қосылады. Егер код төмен тартылмаса (GND-ге қосылған болса), HC-SR04 өлшенбейді, сондықтан код Arduino-да 'жоғары көтереді' (кірісті жоғары/шын етеді).

Бұл нұсқаулық екі құрылғыны салыстыруға сәйкес келсе де, мен сіздің жобаңызға әр түрлі құрылғыларды/опцияларды қалай қосуға/алып тастауға болатынын көрсету үшін осы жерде қалдыруды шештім.

Нан тақтасы Ардуино Түс
GND BB-PWR рельсі Сандық-12 Ақ

6 -қадам: Мұның бәрі жұмыс істейді …

Барлығын жұмыс жасау…
Барлығын жұмыс жасау…
Мұның бәрі жұмыс жасайды…
Мұның бәрі жұмыс жасайды…
Мұның бәрі жұмыс жасайды…
Мұның бәрі жұмыс жасайды…

Енді бәрі байланыстырылған - бәрін реттейтін уақыт келді!

'Болжамдарда' айтылғандай - мен Arduino IDE қалай жұмыс істейтінін немесе Arduino бағдарламалауын түсіндірмеймін (егжей -тегжейлі).

Келесі бөлімдер осы жобаға кіретін Arduino кодын бөледі.

Толық мұрағатты Arduino дамыту үшін пайдаланылатын жерге ашыңыз. MaxSonar-outputs.ino` кодын Arduino IDE-ге жүктеңіз және бастайық!

7 -қадам: Жобаның макеті

Жобада LV-MaxSonar-EZ құрылғысы, схемасы, README және Arduino коды туралы ақпарат бар. Схема Fritzing форматында, сонымен қатар-p.webp

8-қадам: кодты енгізу …

Бұл нұсқаулықта мен кодтың барлық аспектілерінен өте алмаймын. Мен жоғары деңгейдегі кейбір мәліметтерді қарастырамын. Мен сізге кодтағы жоғары деңгейдегі түсініктемені оқып, әдістерді зерттеуге шақырамын.

Түсініктемелерде мен қайталамайтын көптеген ақпарат бар.

«Орнату» кодында бірнеше нәрсені атап өткім келеді …

  • `_DEBUG_OUTPUT` - айнымалы және #анықтаушы операторлар
  • Интерфейс үшін қолданылатын Arduino 'істікшелерінің' анықтамалары
  • Есептеулерде қолданылатын түрлендіру коэффициенттерінің анықтамалары

Отладка код бойынша қолданылады, мен оны динамикалық түрде қалай қосуға/өшіруге болатынын көрсетемін.

«Анықтамалар» бұл кодты басқа жобаларда қолдануды жеңілдету үшін Arduino түйреуіштері мен конверсиялары үшін қолданылады.

Түзету…

'Отладка' бөлімі сұраныс бойынша сериялық шығарылымға отладтау туралы ақпаратты қосуды жеңілдететін айнымалыны және кейбір макростарды анықтайды.

«_DEBUG_OUTPUT» логикалық айнымалысы кодта «false» мәніне орнатылады (ақиқатқа орнатылуы мүмкін) және «DB_PRINT…» макростарында тест ретінде қолданылады. Оны кодта динамикалық түрде өзгертуге болады («setDebugOutputMode» әдісінде көрсетілгендей).

Әлемдік…

Анықтамалардан кейін код бірнеше жаһандық айнымалылар мен объектілерді жасайды және инициализациялайды.

  • SoftwareSerial (келесі тарауды қараңыз)
  • _loopCount - әрбір 'n' жолына тақырып шығару үшін қолданылады
  • _inputBuffer - Опцияларды өңдеуге сериялық/терминалды кірісті жинау үшін қолданылады (күйін келтіру/өшіру)

9-қадам: Arduino бағдарламалық жасақтамасы …

MaxSonar интерфейсінің опцияларының бірі - бұл сериялық деректер ағыны. Алайда, Arduino UNO тек бір сериялық деректер қосылымын қамтамасыз етеді, және ол Arduino IDE (хост компьютері) байланыс үшін USB портымен пайдаланылады/ортақ пайдаланылады.

Бақытымызға орай, Arduino IDE құрамына кіру-шығу интерфейсін енгізу үшін Arduino цифрлық енгізу-шығару түйреуіштерін қолданатын кітапхана компоненті бар. MaxSonar сериялық интерфейсі 9600 BAUD қолданатындықтан, бұл «бағдарламалық қамтамасыз ету» интерфейсі байланысты басқаруға өте жақсы қабілетті.

Arduino-Mega (немесе бірнеше HW сериялық порты бар басқа құрылғыны) қолданатындар үшін кодты физикалық сериялық портты пайдалану үшін реттеп, SW-сериясының қажеттілігін жойыңыз.

«Орнату» әдісі MaxSonar құрылғысымен қолданылатын «SoftwareSerial» интерфейсін инициализациялайды. Тек қабылдау (RX) қажет. MaxSonar шығысына сәйкес келу үшін интерфейс «кері».

10 -қадам: код - орнату

Жоғарыда сипатталғандай, «орнату» әдісі «SoftwareSerial» интерфейсін, сондай -ақ физикалық сериялық интерфейсті инициализациялайды. Ол Arduino енгізу -шығару түйреуіштерін конфигурациялайды және тақырып жібереді.

11 -қадам: Code - Loop

«Цикл» коды келесі әрекеттерді орындайды:

  • Тақырыпты шығару (отладка мен плоттер үшін қолданылады)
  • Өлшеу үшін MaxSonar іске қосыңыз
  • MaxSonar Pulse-Width мәнін оқыңыз
  • MaxSonar Serial-Data мәнін оқыңыз
  • MaxSonar Analog мәнін оқыңыз
  • 'HC-SR04' опциясын тексеріңіз және қосылған болса:

    HC-SR04 құрылғысын іске қосыңыз және оқыңыз

  • Деректерді сериялық плоттер пайдалана алатын қойындымен бөлінген форматта шығарыңыз
  • Басқа уақытты өлшеу үшін жеткілікті уақыт өткенше күтіңіз

12 -қадам: код - MaxSonar іске қосыңыз. PW мәнін оқыңыз

MaxSonar екі режимі бар: «іске қосылған» және «үздіксіз»

Бұл нұсқаулық «іске қосылған» режимді қолданады, бірақ көптеген жобалар «үздіксіз» режимін қолданудан пайда көре алады (деректер кестесін қараңыз).

«Іске қосылған» режимді пайдаланған кезде бірінші жарамды шығыс импульстік ені (PW) шығысынан болады. Осыдан кейін қалған шығыстар жарамды.

`TiggerAndReadDistanceFromPulse` MaxSonar құрылғысындағы триггер түйреуішін импульстейді және алынған импульстің ені арасындағы қашықтықты оқиды.

Назар аударыңыз, көптеген басқа дыбыстық аппараттардан айырмашылығы, MaxSonar айналмалы конверсияны өңдейді, сондықтан оқылатын қашықтық-мақсатқа дейінгі қашықтық.

Бұл әдіс сонымен қатар құрылғының басқа шығулары жарамды болуы үшін жеткілікті ұзақ уақытқа созылады (сериялық, аналогтық).

13 -қадам: код - MaxSonar сериялық мәнін оқыңыз

MaxSonar іске қосылғаннан кейін (немесе «үздіксіз» режимде болғанда), егер сериялық шығыс опциясы қосылған болса («BW - Pin -1 'басқару арқылы)» R nnn «түріндегі сериялық деректер ағыны жіберіледі. тасымалдау-қайту '\ r' арқылы. 'Nnn' - бұл объекттің дюймдік мәні.

«ReadDistanceFromSerial» әдісі сериялық деректерді оқиды (Бағдарламалық қамтамасыз етудің сериялық портынан) және «nnn» мәнін ондық бөлшекке түрлендіреді. Ол сериялық мән алынбаған жағдайда ғана қауіпсіз қауіпсіз уақытты қамтиды.

14 -қадам: Код - MaxSonar аналогтық мәнін оқыңыз

MaxSonar аналогтық порты үздіксіз соңғы өлшенген қашықтыққа пропорционалды шығыс кернеуін қамтамасыз етеді. Бұл мәнді құрылғы инициализацияланғаннан кейін кез келген уақытта оқуға болады. Мән соңғы қашықтықтан 50мS ішінде жаңартылады (іске қосылған немесе үздіксіз режим).

Дюймдегі мән (Vcc/512). Осылайша, 5 вольтты Arduino -дан Vcc мәні ~ 9,8 мВ/д болады. «ReadDistanceFromAnalog» әдісі Arduino аналогтық кірісінің мәнін оқиды және оны «дюймдік» мәнге түрлендіреді.

15 -қадам: HC -SR04 кодын іске қосыңыз және оқыңыз

HC-SR04 оқитын кітапханалар бар болса да, мен олардың кейбіреулері мен тексерген әр түрлі құрылғыларда сенімсіз деп таптым. Мен sr04ReadDistance әдісіне енгізген кодты қарапайым және сенімді деп таптым (арзан HC-SR04 құрылғысы қаншалықты мүмкін болса).

Бұл әдіс HC-SR04 құрылғысын орнатады және іске қосады, содан кейін импульстің енін өлшеуді күтеді. Импульстің енін өлшеу HC-SR04 мәселесін шешу үшін уақытты қамтиды, егер ол мақсатты таба алмаса. Импульстің ені ~ 10 футтық қашықтықтан ұзынырақ объект немесе танылмайтын объект болып саналады. Егер күту уақыты «0» мәніне жетсе, қашықтық ретінде қайтарылады. Бұл «қашықтықты» (импульстің ені) #define мәндерінің көмегімен реттеуге болады.

Импульстің ені объектіге дейінгі қашықтық ретінде қайтарылмай тұрып, айналмалы қашықтыққа түрлендіріледі.

16 -қадам: код - Arduino IDE сериялық плоттерге қолдау

Код - Arduino IDE сериялық плоттерге қолдау
Код - Arduino IDE сериялық плоттерге қолдау

Енді шығару үшін!

«Цикл» әдісі екі құрылғыдан қашықтықты өлшеуді тудырады, бірақ біз онымен не істейміз?

Әрине, біз оны консольде көру үшін жібереміз, бірақ біз одан да көп нәрсені қалаймыз!

Arduino IDE сонымен қатар сериялық плоттер интерфейсін ұсынады. Біз мұны екі құрылғының шығысынан объектіге дейінгі қашықтықты нақты уақыт режимінде ұсыну үшін қолданамыз.

Сериялық плоттер мән белгілері бар тақырыпты қабылдайды, содан кейін диаграмма ретінде бөлінген мәндердің бірнеше жолын қабылдайды. Егер мәндер жүйелі түрде шығарылса («сонша секунд сайын») график объектіге дейінгі қашықтықтың уақыт бойынша визуализациясын қамтамасыз етеді.

`Loop` әдісі MaxSonar-дан үш мәнді және HC-SR04 мәнін сериялық плоттермен қолдануға болатын қойындыдан бөлінген форматта шығарады. Әр 20 жолда ол тақырыпты шығарады (егер сериялық плоттер ағымның ортасында қосылған болса).

Бұл кедергілерге дейінгі қашықтықты көрнекі түрде бейнелеуге және екі құрылғы қайтарған мәндердің айырмашылығын көруге мүмкіндік береді.

17 -қадам: код - күйін келтіру …

Код - жөндеу …
Код - жөндеу …
Код - жөндеу …
Код - жөндеу …

Жөндеу - бұл қажеттілік. Егер бірдеңе күткендей жұмыс істемесе, мәселені қалай шешуге болады?

Түсінудің бірінші жолы - бұл не болып жатқанын көрсете алатын кейбір «қарапайым» мәтіндік шығыс. Оларды кодты қашан және қай жерде ақаулықты іздеуге қосуға болады, содан кейін мәселе шешілгеннен кейін жоюға болады. Дегенмен, кодты қосу мен жою көп уақытты қажет етеді және өз кезегінде басқа мәселелерге әкелуі мүмкін. Кейде бастапқы кодты жалғыз қалдырып, оны динамикалық түрде қосуға және өшіруге болады.

Бұл нұсқаулықта мен Arduino IDE сериялық мониторынан оқылатын кірістен динамикалық түрде отладтаудың басып шығару (сериялық шығыс) мәлімдемелерін қосу және ажырату механизмін қостым (алдағы шығарылымда сериялық плоттер де осы кірісті қамтамасыз етеді деп күтілуде).

«_DEBUG_OUTPUT» логикалық коды код ішінде қолдануға болатын #анықтайтын басып шығару әдістерінің бірқатарында қолданылады. _DEBUG_OUTPUT айнымалы мәні басып шығаруды қосу (шығару) жіберу үшін қолданылады. Мәнді «setDebugOutputMode» әдісі сияқты динамикалық түрде өзгертуге болады.

«SetDebugOutputMode» әдісі сериялық кірістен алынған кіріс негізінде «циклден» шақырылады. Кіріс түзету режимін қосу/өшіру үшін «отладка қосу/өшіру | шын/жалған» сәйкес келгенін көру үшін талданған.

18 -қадам: Қорытынды

Бұл қарапайым аппараттық қондырғы мен мысал коды HC-SR04 пен LV-MaxSonar-EZ құрылғыларының арасындағы айырмашылықты түсінуге көмектеседі деп үміттенемін. Екеуін де қолдану өте оңай, мен олардың әрқайсысының артықшылықтары бар деп ойлаймын. Біреуін емес, қашан қолдану керектігін білу жобаның табысты болуына себепші болады.

BTW-Мен LV-MaxSonar-EZ көмегімен объектіге дейінгі қашықтықты дәл өлшеудің өте қарапайым әдісі туралы айттым … Қажет болған жағдайда қашықтықты оқу үшін аналогтық шығуды (бір сымды) және үздіксіз өлшеу режимін пайдалануға болады. коды 'readDistanceFromAnalog' ішіндегі тікелей Arduino аналогтық кірістен. Бір сым және (қоюландырылған) бір код жолы!

19 -қадам: MaxSonar баламалы қосылымы (180 ° тақырыбымен)

MaxSonar баламалы қосылымы (180 ° тақырыбымен)
MaxSonar баламалы қосылымы (180 ° тақырыбымен)
MaxSonar баламалы қосылымы (180 ° тақырыбымен)
MaxSonar баламалы қосылымы (180 ° тақырыбымен)
MaxSonar баламалы қосылымы (180 ° тақырыбымен)
MaxSonar баламалы қосылымы (180 ° тақырыбымен)

Мен айтқанымдай, MaxSonar үстіңгі деректеме қосылмаған. Сонымен, сіз өзіңіздің жобаңызға сәйкес келетін кез келген қосылымды пайдалана аласыз. Кейбір жағдайларда 180 ° (тікелей) тақырып дұрыс болуы мүмкін. Егер солай болса, мен оны осы нұсқаулықпен қалай қолдануға болатынын тез көрсеткім келді. Бұл иллюстратация ерлер мен әйелдердің таспалы кабелі бар нан тақтасына жалғанған тікелей тақырыбы бар MaxSonar-ді көрсетеді, содан кейін мақаланың қалған бөлігінде сипатталғандай Arduino-ға қосылады.

20 -қадам: Arduino коды

Arduino коды Sonar Range-Finder салыстыруындағы жобаның 'MaxSonar-outputs' қалтасында.

Ұсынылған: