Përmbajtje:

Sistemi i pozicionimit të bazuar në ultratinguj: 4 hapa (me fotografi)
Sistemi i pozicionimit të bazuar në ultratinguj: 4 hapa (me fotografi)

Video: Sistemi i pozicionimit të bazuar në ultratinguj: 4 hapa (me fotografi)

Video: Sistemi i pozicionimit të bazuar në ultratinguj: 4 hapa (me fotografi)
Video: CURE Morton's Neuroma, Metatarsalgia & Ball of the Foot Pain FAST! 2024, Nëntor
Anonim
Sistemi i pozicionimit të bazuar në ultratinguj
Sistemi i pozicionimit të bazuar në ultratinguj

Të gjitha versionet e radarëve tejzanor që kam gjetur për pajisjet arduino (Arduino - Radar/Detector Ultrasonic, Arduino Ultrasonic Radar Project) janë radarë shumë të bukur, por të gjithë ata janë "të verbër". Dua të them, radari zbulon diçka, por çfarë zbulon?

Kështu që unë i propozoj vetes të zhvilloj një sistem të aftë për të zbuluar objekte dhe për t'i identifikuar ato. Me fjalë të tjera një sistem pozicionimi pa përdorur pajisje GPS por detektorë tejzanor.

Ky është rezultati që shpresoj të ju pëlqejë.

Hapi 1: Si funksionon?

Si punon?
Si punon?

Sistemet e pozicionimit formohen nga tre stacione sensorë me detektorë tejzanor dhe id_node 1, 2 dhe 3 duke formuar një drejtkëndësh ose katror që spastrojnë një kënd prej 90º dhe ku distancat mes tyre janë të njohura siç tregohet në figurën 1.

konst distanca e notimit midis1 dhe2 = 60.0;

const distanca notuese midis2 dhe3 = 75.0;

Këta sensorë matin distancën dhe këndin e objekteve të tjera me id_node më të madhe se 3 që gjithashtu kanë një detektor tejzanor që fshin një kënd prej 170 °.

Të gjithë ata dërgojnë distancat, këndet e matura dhe id_node në një stacion tjetër kryesor duke përdorur komunikimet pa tel për të analizuar, llogaritur pozicionin e objekteve duke përdorur llogaritjen e trigonometrisë dhe për t'i identifikuar ato.

Për të shmangur ndërhyrjet, stacioni kryesor sinkronizon të gjithë detektorët e ultrazërit në atë mënyrë që vetëm një detektor tejzanor po mat në çdo moment

Pas kësaj dhe duke përdorur një komunikim serik, stacioni kryesor dërgon informacionin (këndin, distancën, id_object) në një skicë përpunimi për të vizatuar rezultatet.

Hapi 2: Si të Konfiguroni Tre Stacionet Sensore dhe Objektet

Si të konfiguroni tre stacionet sensorë dhe objektet
Si të konfiguroni tre stacionet sensorë dhe objektet
Si të konfiguroni tre stacionet sensorë dhe objektet
Si të konfiguroni tre stacionet sensorë dhe objektet

Funksioni i vetëm i secilit stacion sensor është zbulimi i objekteve dhe dërgimi i listës së distancës, këndit dhe nyjes id të matur në stacionin kryesor.

Kështu që ju duhet të përditësoni distancën maksimale të zbulimit ("valid_max_distance") e lejuar dhe atë minimale ("valid_min_distance") (centimetra) për të përmirësuar zbulimin dhe për të kufizuar zonën e zbulimit:

int e vlefshme_max_distanca = 80;

int e vlefshme_min_distanca = 1;

Nyja id e këtyre stacioneve sensor ("ky_nyje" në kodin më poshtë) janë 1, 2 dhe 3 dhe nyja id e stacionit kryesor është 0.

const uint16_t this_node = 01; // Adresa e nyjes sonë në formatin Octal (Node01, Node02, Node03)

const uint16_t nyje_ tjeter = 00; // Adresa e nyjes kryesore (Node00) në formatin Octal

Çdo stacion sensori fshin dhe kënd 100º ("max_angle" në kodin më poshtë)

#përcakto min_këndin 0

#përcakto max_angle 100

Si më lart, funksioni i vetëm i një objekti është zbulimi i objekteve dhe dërgimi i listës së distancave, këndeve dhe objektit të matur në stacionin kryesor. Id -ja e një objekti ("ky_nyje" në kodin më poshtë) duhet të jetë më i madh se 3.

Çdo objekt fshin dhe kënd 170º dhe si më sipër, është e mundur të përditësohet distanca maksimale dhe minimale e zbulimit.

const uint16_t this_node = 04; // Adresa e nyjes sonë në formatin Octal (Node04, Node05,…)

const uint16_t nyje_ tjeter = 00; // Adresa e nyjes kryesore (Nyja00) në formatin Oktal int valid_max_distance = 80; int e vlefshme_min_distanca = 1; #përcakto min_këndin 0 #përcakto maksimumin_këndësh 170

Hapi 3: Si të konfiguroni Master Station

Si të konfiguroni Master Station
Si të konfiguroni Master Station
Si të konfiguroni Master Station
Si të konfiguroni Master Station
Si të konfiguroni Master Station
Si të konfiguroni Master Station

Funksioni i stacionit kryesor është të marrë transmetimet e stacioneve sensor dhe objektet dhe t'i dërgojë rezultatet duke përdorur portën serike në një skicë përpunimi për t'i vizatuar ato. Për më tepër sinkronizon të gjitha objektet dhe tre stacionet e sensorëve në atë mënyrë që vetëm njëri prej tyre po mat në çdo kohë për të shmangur ndërhyrjet.

Së pari ju duhet të azhurnoni distancën (centimetra) midis sensorit 1 dhe 2 dhe distancën midis 2 dhe 3.

konst distanca e notimit midis1 dhe2 = 60.0;

const distanca notuese midis2 dhe3 = 70.0;

Skica llogarit pozicionin e objekteve në mënyrën e mëposhtme:

  • Për të gjitha transmetimet e objekteve (nyja id_ më e madhe se 3) kërkoni të njëjtën distancë në secilin transmetim të sensorëve tejzanor (nyja id_ 1, 2 ose 3).
  • Të gjitha këto pika formojnë një listë të "kandidatëve" (distanca, këndi, nyja id_) për të qenë pozicioni i një objekti ("procesi_pikë_ objekti_ me_piksensorin" në skicë).
  • Për secilin "kandidat" të listës së mëparshme, funksioni "kandidati_zgjedhur_ midis_sensorit2 dhe3" llogarit nga pikëpamja e sensorit tejzanor 2 dhe 3, të cilët prej tyre përputhen me gjendjen e mëposhtme të trigonometrisë (shiko fotografitë 2 dhe 3)

noton distancefroms2 = mëkat (radianët (këndi)) * distanca;

noton distancefroms3 = cos (radianët (këndi_kandidat)) * distanca_kandidati; // Gjendja e trigonometrisë 1 abs (distanca nga 2 + distanca nga 3 - distanca midis 2 dhe 3) <= noto (distanca maksimale_dallim)

Sa më sipër, për secilin "kandidat" të listës së mëparshme, funksioni "kandidat_zgjedhur_ midis_sensorit1 dhe2" llogarit nga pikëpamja e sensorit tejzanor 1 dhe 2, cili prej tyre përputhet me lidhjen e mëposhtme të trigonometrisë (shiko foton 2 dhe 3)

distanca notuese nga 1 = sin (radianët (këndi)) * distanca; distanca notuese nga 2 = cos (radianët (këndi_kandidat)) * distanca_kandidati; // Gjendja e trigonometrisë 2 abs (distancefroms1 + distancefroms2 - distancebetween1and2) <= noton (max_diference_distance)

Vetëm kandidatët (distanca, këndi, id_node) që përputhen me kushtet e trigonometrisë 1 dhe 2 janë objekte të identifikuara të zbuluara nga stacionet e sensorit 1, 2 dhe 3

Pas kësaj, rezultatet po dërgohen nga stacioni kryesor në një skicë përpunimi për t'i vizatuar ato.

Hapi 4: Lista e materialit

Image
Image

Lista e materialeve të nevojshme për një stacion sensor ose një objekt është si më poshtë:

  • Bordi Nano
  • Sensori tejzanor
  • Mikro servo motor
  • Moduli pa tel NRF24L01
  • Përshtatës NRF24L01

dhe lista e materialeve për stacionin kryesor është si më poshtë:

  • Bordi Nano
  • Moduli pa tel NRF24L01
  • Përshtatës NRF24L01

Recommended: