Satura rādītājs:

Uz ultraskaņu balstīta pozicionēšanas sistēma: 4 soļi (ar attēliem)
Uz ultraskaņu balstīta pozicionēšanas sistēma: 4 soļi (ar attēliem)

Video: Uz ultraskaņu balstīta pozicionēšanas sistēma: 4 soļi (ar attēliem)

Video: Uz ultraskaņu balstīta pozicionēšanas sistēma: 4 soļi (ar attēliem)
Video: 😩 Сплошное разочарование или повод для радости? Подробный гид по Audi A6 C6. 2024, Novembris
Anonim
Uz ultraskaņu balstīta pozicionēšanas sistēma
Uz ultraskaņu balstīta pozicionēšanas sistēma

Visas manis atrastās ultraskaņas radaru versijas arduino ierīcēm (Arduino - radars/ultraskaņas detektors, Arduino ultraskaņas radaru projekts) ir ļoti jauki radari, bet visi ir "akli". Es domāju, radars kaut ko nosaka, bet ko tas atklāj?

Tāpēc es ierosinu izstrādāt sistēmu, kas spēj atklāt objektus un tos identificēt. Citiem vārdiem sakot, pozicionēšanas sistēma, neizmantojot GPS ierīces, bet ultraskaņas detektorus.

Šis ir rezultāts, es ceru, ka jums patīk.

1. darbība. Kā tas darbojas?

Kā tas darbojas?
Kā tas darbojas?

Pozicionēšanas sistēmas veido trīs sensoru stacijas ar ultraskaņas detektoriem un 1., 2. un 3. mezgls, kas veido taisnstūri vai kvadrātu, kas aptver 90 ° leņķi un kur attālumi starp tiem ir zināmi, kā parādīts 1. attēlā.

const pludiņa attālums starp 1 un 2 = 60,0;

const pludiņa attālums starp 2 un 3 = 75,0;

Šie sensori mēra attālumu un leņķi citiem objektiem, kuru id_node ir lielāks par 3 un kuriem ir arī ultraskaņas detektors, kas slauc 170 ° leņķi.

Visi no tiem nosūta attālumus, izmērītos leņķus un id_node uz citu galveno staciju, izmantojot bezvadu sakarus, lai analizētu, aprēķinātu objektu atrašanās vietu, izmantojot trigonometrijas aprēķinu, un tos identificētu.

Lai izvairītos no traucējumiem, galvenā stacija sinhronizē visus ultraskaņas detektorus tādā veidā, ka katru brīdi mēra tikai viens ultraskaņas detektors

Pēc tam un izmantojot seriālo komunikāciju, galvenā stacija nosūta informāciju (leņķi, attālumu, id_objektu) uz apstrādes skici, lai attēlotu rezultātus.

2. darbība. Kā konfigurēt trīs sensoru stacijas un objektus

Kā konfigurēt trīs sensoru stacijas un objektus
Kā konfigurēt trīs sensoru stacijas un objektus
Kā konfigurēt trīs sensoru stacijas un objektus
Kā konfigurēt trīs sensoru stacijas un objektus

Katras sensoru stacijas vienīgā funkcija ir atklāt objektus un nosūtīt uz galveno staciju attāluma, leņķa un id mezglu sarakstu.

Tāpēc jums ir jāatjaunina maksimālais noteikšanas attālums (“valid_max_distance”) un minimālais (“valid_min_distance”) (centimetri), lai uzlabotu noteikšanu un ierobežotu noteikšanas zonu:

int valid_max_distance = 80;

int valid_min_distance = 1;

Šo sensoru staciju id mezgls (zemāk esošajā kodā “this_node”) ir 1, 2 un 3, un galvenās stacijas id mezgls ir 0.

const uint16_t šis_mezgls = 01; // Mūsu mezgla adrese oktāla formātā (Node01, Node02, Node03)

const uint16_t cits_mezgls = 00; // Galvenā mezgla (mezgls00) adrese oktāla formātā

Katra sensoru stacija slaucās un 100º leņķis (“max_angle” zemāk esošajā kodā)

#define min_angle 0

#define max_angle 100

Tāpat kā iepriekš, vienīgā objekta funkcija ir atklāt objektus un nosūtīt galvenajai stacijai attālumu, leņķu un id objektu sarakstu. Viena objekta (zemāk esošajā kodā “this_node”) ID ir jābūt lielākam par 3.

Katrs objekts slaucās un 170 ° leņķis un tāpat kā iepriekš, ir iespējams atjaunināt maksimālo un minimālo noteikšanas attālumu.

const uint16_t šis_mezgls = 04; // Mūsu mezgla adrese oktāla formātā (Node04, Node05,…)

const uint16_t cits_mezgls = 00; // Galvenā mezgla (mezgls00) adrese oktāla formātā int valid_max_distance = 80; int valid_min_distance = 1; 170

3. darbība. Kā konfigurēt galveno staciju

Kā konfigurēt galveno staciju
Kā konfigurēt galveno staciju
Kā konfigurēt galveno staciju
Kā konfigurēt galveno staciju
Kā konfigurēt galveno staciju
Kā konfigurēt galveno staciju

Galvenās stacijas funkcija ir uztvert sensoru staciju un objektu pārraides un nosūtīt rezultātus, izmantojot seriālo portu, uz apstrādes skici, lai tos uzzīmētu. Turklāt sinhronizē visus objektus un trīs sensoru stacijas tādā veidā, ka tikai viens no tiem veic mērījumus, lai izvairītos no traucējumiem.

Lai atjaunotu stabilitāti, jums jāatjaunina attālums (centimetros) starp sensoru 1 un 2 un attālums starp 2 un 3.

const pludiņa attālums starp 1 un 2 = 60,0;

const pludiņa attālums starp 2 un 3 = 70,0;

Skice aprēķina objektu atrašanās vietu šādā veidā:

  • Visām objektu pārraidēm (id_node lielāks par 3) katrā ultraskaņas sensoru pārraidē meklējiet vienādu attālumu (id_node 1, 2 vai 3).
  • Visi šie punkti veido “kandidātu” sarakstu (attālums, leņķis, id_node), kas ir viena objekta pozīcija (skicē “process_pointobject_with_pointssensor”).
  • Katram iepriekšējā saraksta “kandidātam” funkcija “kandidāts_izvēlēts_betensensors2un3” no 2. un 3. ultraskaņas sensora viedokļa aprēķina, kuri no tiem atbilst šādam trigonometrijas nosacījumam (skat. 2. un 3. attēlu)

pludiņa distancefroms2 = sin (radiāni (leņķis)) * attālums;

pludiņa distancefroms3 = cos (radiāni (leņķa_kandidāts)) * distance_candidate; // Trigonometrijas nosacījums 1 abs (distancefroms2 + distancefroms3 - distancebet22) <= float (max_diference_distance)

Tāpat kā iepriekš, katram iepriekšējā saraksta "kandidātam" funkcija "kandidāts_izvēlēts_ starp_sensora1un2" no ultraskaņas sensora 1 un 2 viedokļa aprēķina, kuri no tiem atbilst šādai trigonometrijas sakarībai (skat. 2. un 3. attēlu)

float distancefroms1 = sin (radiāni (leņķis)) * attālums; float distancefroms2 = cos (radiāni (leņķis_kandidāts)) * distance_candidate; // Trigonometrijas nosacījums 2 abs (distancefroms1 + distancefroms2 - distancebet112) <= float (max_diference_distance)

Tikai kandidāti (attālums, leņķis, id_node), kas atbilst trigonometrijas 1. un 2. nosacījumam, ir identificēti objekti, ko nosaka 1., 2. un 3. sensoru stacija

Pēc tam galvenās stacijas rezultātus nosūta uz apstrādes skici, lai tos uzzīmētu.

4. solis: Materiālu saraksts

Image
Image

Materiālu saraksts, kas nepieciešams vienai sensoru stacijai vai vienam objektam, ir šāds:

  • Nano dēlis
  • Ultraskaņas sensors
  • Mikro servo motors
  • NRF24L01 bezvadu modulis
  • NRF24L01 adapteris

un galvenās stacijas materiālu saraksts ir šāds:

  • Nano dēlis
  • NRF24L01 bezvadu modulis
  • NRF24L01 adapteris

Ieteicams: