Kazalo:

Asinhrono odkrivanje ovir z ultrazvokom: 4 koraki
Asinhrono odkrivanje ovir z ultrazvokom: 4 koraki

Video: Asinhrono odkrivanje ovir z ultrazvokom: 4 koraki

Video: Asinhrono odkrivanje ovir z ultrazvokom: 4 koraki
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Julij
Anonim
Z ultrazvokom asinhrono zaznajte ovire
Z ultrazvokom asinhrono zaznajte ovire

Za zabavo gradim robota, ki ga želim avtonomno premikati v hiši.

Delo je dolgo in delam ga korak za korakom.

Ta poučni poudarek na odkrivanju ovir z Arduino Mega

Ultrazvočni senzorji HC-SR04 proti HY-SRF05 so poceni in enostavni za uporabo, vendar jih je težko vključiti v zanko mikrokrmilnika v zapletenega robota. Hotel sem asinhrono izvesti odkrivanje ovir.

_

O funkcijah tega robota sem že objavil 3 navodila, ki jih lahko naročite:

  • Naredite dajalnik koles
  • Naredite svoj WIFI Gateway
  • Uporabite enoto za inercijski modul

In dokumentacijo o združevanju umetne inteligence in ultrazvoka za lokalizacijo robota.

1. korak: Kaj je točno težava z ultrazvočnimi senzorji in mikrokrmilniki?

Kaj je pravzaprav težava z ultrazvočnimi senzorji in mikrokrmilniki?
Kaj je pravzaprav težava z ultrazvočnimi senzorji in mikrokrmilniki?
Kaj je pravzaprav težava z ultrazvočnimi senzorji in mikrokrmilniki?
Kaj je pravzaprav težava z ultrazvočnimi senzorji in mikrokrmilniki?

Sinhrone omejitve čakanja in Arduino

Koda mikrokrmilnikov teče v zanki in ne podpira več niti. Ultrazvočni senzorji temeljijo na trajanju signala. To trajanje traja do 30 m s, kar je zelo dolgo čakati v zanki, ko se morajo mikrokrmilniki spopasti z več motorji in senzorji (na primer servo motorji in enosmerni motorji s kodirnimi dajalniki).

Zato sem želel razviti objekt, ki deluje asinhrono.

2. korak: Kako deluje?

Kako deluje ?
Kako deluje ?

Zasnovan je bil za Atmega za odkrivanje ovir. Podpira do 4 ultrazvočne senzorje.

Zaradi rednih časovnih prekinitev lahko sistem spremlja do 4 ultrazvočne senzorje. Glavna koda mora samo določiti, kateri senzor naj se aktivira s pogojem in pragom. Glavni se bo prekinil le, če se pojavi (stanje, prag).

Glavne funkcije so:

  • Opozorilo je osnovno zaznavanje ovir in zagotavlja prekinitev, če vsaj 1 od 4 senzorjev zazna razdaljo pod pragom
  • Monitor je razširjena funkcija, ki omogoča prekinitev pri kombinaciji razdalje do 4 senzorjev. Možni pogoji so nad, pod, enaki ali ne enaki pragom.

3. korak: Tehnične podrobnosti

Uporabite časovnik 4, da pin 6 7 8 ne morete uporabiti kot PWM.

Za vsak senzor predmet potrebuje sprožilno kodo in prekinitveno kodo.

Na vrhu senzorjev za prekinitev PIN -a objekt potrebuje še eno PIN za prekinitev za uporabo programske opreme.

4. korak: Kako izvajati?

Kako izvajati?
Kako izvajati?

Senzorje priključite na zgornji način

Prenesite iz tega skladišča GitHub

  • EchoObstacleDetection.cpp,
  • EchoObstacleDetection.h
  • PrimerEchoObstacleDetection.ino

Ustvarite imenik EchoObstacleDetection v knjižnici IDE in premaknite.cpp in.h

Preizkusite

Odprite ExampleEchoObstacleDetection.ino.

To je preprost primer odkrivanja ovir, ki se izvaja z dvema ultrazvočnima senzorjema.

Izhod je usmerjen na serijski monitor. Sprva bo natisnil razdalje, ki jih zaznata dva senzorja, nato pa natisnil opozorila, odvisno od razdalj pod pragom.

Priporočena: