Sadržaj:

Sustav pozicioniranja temeljen na ultrazvuku: 4 koraka (sa slikama)
Sustav pozicioniranja temeljen na ultrazvuku: 4 koraka (sa slikama)

Video: Sustav pozicioniranja temeljen na ultrazvuku: 4 koraka (sa slikama)

Video: Sustav pozicioniranja temeljen na ultrazvuku: 4 koraka (sa slikama)
Video: #1 Big Toe Joint Pain Cure [Arthritis? Sesamoiditis? Turf Toe? Gout?] 2024, Studeni
Anonim
Sustav pozicioniranja temeljen na ultrazvuku
Sustav pozicioniranja temeljen na ultrazvuku

Sve verzije ultrazvučnih radara koje sam pronašao za arduino uređaje (Arduino - Radar/Ultrasonic Detector, Arduino Ultrasonic Radar Project) vrlo su lijepi radari, ali sve su one "slijepe". Mislim, radar nešto detektira, ali što detektira?

Stoga se predlažem da razvijem sustav koji može otkriti objekte i identificirati ih. Drugim riječima, sustav pozicioniranja bez upotrebe GPS uređaja, već ultrazvučnih detektora.

Ovo je rezultat koji se nadam da će vam se svidjeti.

Korak 1: Kako to funkcionira?

Kako radi?
Kako radi?

Sustave za pozicioniranje čine tri senzorske postaje s ultrazvučnim detektorima i id_ čvor 1, 2 i 3 koji tvore pravokutnik ili kvadrat koji zauzima kut od 90º i gdje su udaljenosti između njih poznate kao što je prikazano na slici 1.

const plutajuća udaljenost između 1 i 2 = 60,0;

const plutajuća udaljenost između 2i3 = 75,0;

Ovi senzori mjere udaljenost i kut drugih objekata s id_ čvorom većim od 3 koji također imaju ultrazvučni detektor koji pomiče kut od 170 °.

Svi oni šalju udaljenosti, izmjerene kutove i id_node na drugu glavnu stanicu koristeći bežične komunikacije za analizu, izračun položaja objekata pomoću trigonometrijskog izračuna i njihovu identifikaciju.

Kako bi se izbjegle smetnje, glavna stanica sinkronizira sve ultrazvučne detektore na način da u svakom trenutku mjeri samo jedan ultrazvučni detektor

Nakon toga i koristeći serijsku komunikaciju, glavna stanica šalje informacije (kut, udaljenost, id_objekt) na skicu za obradu radi iscrtavanja rezultata.

Korak 2: Kako konfigurirati tri senzorske stanice i objekte

Kako konfigurirati tri senzorske postaje i objekte
Kako konfigurirati tri senzorske postaje i objekte
Kako konfigurirati tri senzorske postaje i objekte
Kako konfigurirati tri senzorske postaje i objekte

Jedina funkcija svake senzorske postaje je otkrivanje objekata i slanje popisa udaljenosti, kuta i id čvora izmjerenog na glavnu stanicu.

Stoga morate ažurirati najveću dopuštenu udaljenost otkrivanja ("valid_max_distance") i minimalnu ("valid_min_distance") (centimetre) da biste poboljšali otkrivanje i ograničili zonu otkrivanja:

int validna_max_distance = 80;

int valid_min_distance = 1;

ID čvor ovih senzorskih stanica ("this_node" u donjem kodu) je 1, 2 i 3, a id čvor glavne postaje 0.

const uint16_t this_node = 01; // Adresa našeg čvora u oktalnom formatu (Node01, Node02, Node03)

const uint16_t other_node = 00; // Adresa glavnog čvora (Node00) u oktalnom formatu

Svaka senzorska stanica prelazi i kut je 100º (“max_angle” u donjem kodu)

#define min_angle 0

#define max_angle 100

Kao što je gore jedina funkcija objekta je otkrivanje objekata i slanje popisa udaljenosti, kutova i id objekata izmjerenih do glavne postaje. ID jednog objekta ("this_node" u donjem kodu) mora biti veći od 3.

Svaki objekt pomiče pod kutom od 170º, a kao što je gore navedeno, moguće je ažurirati maksimalnu i minimalnu udaljenost otkrivanja.

const uint16_t this_node = 04; // Adresa našeg čvora u oktalnom formatu (Node04, Node05, …)

const uint16_t other_node = 00; // Adresa glavnog čvora (Node00) u oktalnom formatu int valid_max_distance = 80; int valid_min_distance = 1; #define min_angle 0 #define max_angle 170

Korak 3: Kako konfigurirati glavnu stanicu

Kako konfigurirati glavnu stanicu
Kako konfigurirati glavnu stanicu
Kako konfigurirati glavnu stanicu
Kako konfigurirati glavnu stanicu
Kako konfigurirati glavnu stanicu
Kako konfigurirati glavnu stanicu

Funkcija glavne postaje je primanje prijenosa senzorskih stanica i objekata te slanje rezultata putem serijskog porta na skicu za obradu radi iscrtavanja. Štoviše, sinkronizira sve objekte i tri senzorske postaje na način da samo jedan od njih mjeri svaki put kako bi se izbjegle smetnje.

Za početak morate ažurirati udaljenost (centimetre) između senzora 1 i 2 i udaljenost između 2 i 3.

const plutajuća udaljenost između 1 i 2 = 60,0;

const plutajuća udaljenost između 2 i 3 = 70,0;

Skica izračunava položaj objekata na sljedeći način:

  • Za sve prijenose objekata (id_node veći od 3) potražite istu udaljenost u svakom prijenosu ultrazvučnih senzora (id_node 1, 2 ili 3).
  • Sve ove točke tvore popis "kandidata" (udaljenost, kut, id_ čvor) koji će biti pozicija jednog objekta ("proces_pointobject_with_pointssensor" na skici).
  • Za svakog "kandidata" s prethodnog popisa, funkcija "kandidat_izabrani_između_osjetnika2i3" izračunava s gledišta ultrazvučnog senzora 2 i 3 koji od njih odgovaraju sljedećem uvjetu trigonometrije (pogledajte slike 2 i 3)

plutajuća udaljenostod2 = sin (radijani (kut)) * udaljenost;

float distancefroms3 = cos (radijani (kutni_kandidat)) * udaljenost_kandidat; // Uvjet trigonometrije 1 abs (udaljenostod2 + udaljenostod3 - udaljenost između2i3) <= float (max_diference_distance)

Kao i gore, za svakog "kandidata" s prethodnog popisa, funkcija "kandidat_izabrani_između_osjetnika1 i 2" izračunava sa stajališta ultrazvučnog senzora 1 i 2 koji od njih odgovaraju sljedećoj relaciji trigonometrije (vidi sliku 2 i 3)

float distancefroms1 = sin (radijani (kut)) * udaljenost; float distancefroms2 = cos (radijani (angle_kandidat)) * distance_candidate; // Uvjet trigonometrije 2 abs (udaljenostod1 + udaljenostod2 - udaljenost između1i2) <= float (max_diference_distance)

Samo kandidati (udaljenost, kut, id_ čvor) koji odgovaraju uvjetima trigonometrije 1 i 2 identificirani su objekti otkriveni senzorskim stanicama 1, 2 i 3

Nakon toga rezultati se šalju glavnom stanicom na skicu za obradu kako bi ih iscrtali.

Korak 4: Popis materijala

Image
Image

Popis materijala potrebnog za jednu senzorsku stanicu ili jedan objekt je sljedeći:

  • Nano ploča
  • Ultrazvučni senzor
  • Mikro servo motor
  • Bežični modul NRF24L01
  • NRF24L01 adapter

a popis materijala za glavnu stanicu je sljedeći:

  • Nano ploča
  • Bežični modul NRF24L01
  • NRF24L01 adapter

Preporučeni: