Indholdsfortegnelse:

Ultralydsradar ved hjælp af Arduino Nano og seriel plotter: 10 trin
Ultralydsradar ved hjælp af Arduino Nano og seriel plotter: 10 trin

Video: Ultralydsradar ved hjælp af Arduino Nano og seriel plotter: 10 trin

Video: Ultralydsradar ved hjælp af Arduino Nano og seriel plotter: 10 trin
Video: Ultralyds-ekkolod med HC-SR04, servo, SSD1306 128x64 OLED og NodeMCU ESP32S på Arduino IDE 2024, Juli
Anonim
Ultralydsradar ved hjælp af Arduino Nano og seriel plotter
Ultralydsradar ved hjælp af Arduino Nano og seriel plotter

I denne Instructable lærer vi om det grundlæggende i et servobibliotek samt opsætning af ultralydssensoren og bruger den som en radar. output fra dette projekt vil være synligt på den serielle plottermonitor.

Forbrugsvarer

-Arduino Nano.

-Brødbræt.

-Limpistol.

-Jumper ledninger.

-PC til Arduino USB.

Trin 1: Tilslut Arduino til sensor og servo

Tilslut Arduino til sensor og servo
Tilslut Arduino til sensor og servo
Tilslut Arduino til sensor og servo
Tilslut Arduino til sensor og servo
Tilslut Arduino til sensor og servo
Tilslut Arduino til sensor og servo
Tilslut Arduino til sensor og servo
Tilslut Arduino til sensor og servo

følg tilslutningsskemaet som beskrevet.

ultralydssensor

- udløser til pin2 af Arduino

- ekko til pin3 af arduino

- Vcc og Gnd til henholdsvis 5v og Gnd

servo:

- brun ledning til jord

- rød ledning til vcc

- gul/orangelig ledning til pin 9 (forbindelserne vist i kredsløbsdiagrammet er ikke de samme som beskrevet, følg beskrivelsen for det bedste resultat)

Trin 2: Opsætning af sensoren

Opsætning af sensoren
Opsætning af sensoren

varm lim servoen på et stykke pap.

Servoen leveres med en række tilbehør til akslen.

fastgør den flade og store på motorakslen, og drej den helt til den ene side.

du kan se, at servoen kun kan rotere op til en grænse på 180 grader i begge retninger.

juster nu tilbehøret i overensstemmelse hermed, så det sidder helt lige i 180 graders vinkel.

lim derefter sensoren til fastgørelsen som vist på figuren.

servoen skal nu kunne rotere sensoren fra 0 til 180 grader.

Trin 3: Opsætning af Arduino

Opsætning af Arduino
Opsætning af Arduino
Opsætning af Arduino
Opsætning af Arduino

når hele opsætningen ligner den på billedet, skal du slutte Arduino til computeren og starte Arduino IDE. der er en trinvis forklaring på hver kodeblok i de følgende trin.

Trin 4: Deklaration af variablerne

Deklaration af variablerne
Deklaration af variablerne

#include det er biblioteket, der kræves for effektivt at køre servomotoren, som kræver et pwm -signal.

trigger, ekko, varighed, afstand er alle heltal. stifter på aftrækkeren og ekkoet er defineret i overensstemmelse hermed.

en variabel "servo" er oprettet for at adressere den motor, som vi tilsluttede Arduinoen kan understøtte flere servoer, så længe den kan levere strøm til dem, og den har nok af disse kontrolstifter.

Trin 5: Opsætning og sløjfe

Opsætning og sløjfe
Opsætning og sløjfe

i hulrumsopsætningsfunktionen, erklær pin -tilstandene som i figuren.

i void loop funktionen kalder to andre funktioner som venstre og højre disse funktioner senere vil blive bygget til at rotere motorakslen.

start også den serielle kommunikation mellem Arduino og pc med en baudhastighed på 9600, hvilket er nok til at understøtte vores applikation.

Trin 6: Venstre og højre

Venstre og højre
Venstre og højre

mikroservoen kan rotere mellem 0 og en vinkel på 180 grader.

for at opnå denne bevægelse skal vi bygge en sweep motion -funktion.

Selvom det kan gøres ved hjælp af en enkelt funktion, er dette en anden måde at gøre det på.

i hver af kodeblokken finder vi, at heltalet "afstand" er givet returværdien for funktionen echoloop ().

denne funktion beregner objektets afstand fra sensoren.

funktionerne indeholder udtrykkene serial.print () og serial.println ().

for at få seriel plotter til at plotte variablerne, skal vi udskrive dem i dette format.

Serial.print (variabel1);

Serial.print ("");

Serial.println (variabel2);

i vores tilfælde er variabel1 vinklen, og variabel2 er afstanden.

Trin 7: Beregning af afstanden

Beregning af afstanden
Beregning af afstanden

sensoren kræver en 10 mikrosencond -puls for at sende det ultralydssungede signal, som derefter skal afspejle objektet og vil blive modtaget af modtageren. som vist i omage koden er designet til at præcis det.

når refleksionens varighed er kendt, kan objektets afstand let beregnes.

ultralyd også kører med lydens hastighed i luft 343m/s.

den beregnede afstand returneres nu til det sted, hvor funktionen kaldes.

Trin 8: Upload koden og start

Upload koden og start
Upload koden og start
Upload koden og start
Upload koden og start
Upload koden og start
Upload koden og start

Når koden er verificeret og uploadet, skal du blot placere nogle objekter foran sensoren og køre den.

husk de objekter, jeg placerede

- et multimeter til venstre for sensoren

- en sort boks tæt og foran sensoren

- en blå boks til højre i en vis afstand

Trin 9: Fortolkning af serieplotteren

Fortolkning af serieplotteren
Fortolkning af serieplotteren

Åbn serieplotteren ved at gå til værktøjer.

den nyeste Arduino IDE har seriel plotter, så opdater IDE.

i plottet finder vi en blå trekantet bølge, som er plottet for servoens vinkel.

det røde plot er afstanden beregnet af sensoren.

jo tættere objektet er, jo lavere falder det røde plot.

jo længere objektet er, jo højere og lidt uregelmæssigt bliver det røde plot.

du kan bemærke de tre store depressioner i plottet

- tæt på nul grader i det blå plot - multimeteret.

- i midten af opadgående og nedadgående skråning - den sorte boks

- på toppen af det blå plot - en mindre fordybning, fordi objektet er længere - den blå boks placeret langt til højre side.

brug det blå plot som reference for vinklen, der varierer fra 0 til 180 grader

afstanden mellem de målte objekter varierer fra 2 til 200 cm afhængigt af objektets følsomhed.

Trin 10: Forholdsregler

anbring ikke genstande af klud. klud spreder ultralyd og får projektet til at puke værdier i intervallet 2000cm.

det er godt for faste genstande.

Sørg for, at objektets højde er nok til at opfange ultralydspuls.

juster forsinkelsen i funktionen højre (), venstre () for at få sensoren til at rotere hurtigere.

Anbefalede: