Leírás
Ez az érzékelő jelzi a távolságot közte és a legközelebbi szilárd tárgy között (50 mm - 1 m tartomány). A távolságot úgy számítja ki, hogy felhasználja azt az időt, amely alatt az ultrahanghullámok visszapattannak egy tárgyról, és visszatérnek az érzékelőhöz.
Hogyan működik a távolságérzékelő: Távolság figyelése
A távolságérzékelő ugyanazokat az elveket használja a hang mérésére, mint a szonár eszközök. Egy apró ultrahangimpulzust küld ki az érzékelő egyik oldalán lévő adójával, majd megszorozza, mennyi időbe telik, amíg a hang visszaverődik az érzékelő másik oldalán lévő vevőről. Az érzékelő a távolságot a hangimpulzus oda-vissza útjának időtartama alapján számítja ki. A távolságérzékelő ezután a hangsebesség alapján számítást végez, hogy megmondja a robot agyának, milyen messze van a legközelebbi tárgy.
Ha a felület nem sík, mint egy ívelt fal vagy egy labda, az ultrahangos hullám nem verődik vissza minden részről egyformán vagy egyszerre. A tárgy detektált távolságát az a legközelebbi felület határozza meg, amely elég nagy ahhoz, hogy a hullám kimutatható mennyiségét visszaverje.
A távolságérzékelő általános felhasználási területei:
Ez az érzékelő képes érzékelni, hogy van-e tárgy előtte.
Ez az érzékelő képes mérni a távolságot közte és egy tárgy között.
- A robot ezt az érzékelőt arra használhatja, hogy egy bizonyos távolságot távol tartson egy tárgytól. Tekintse meg az alábbi animációt, hogy megtekinthesse a távolság értékének változását, ahogy a robot addig hajt, amíg a távolság 160 mm alá nem esik.
- A robot ezzel az érzékelővel felhajthat egy tárgyhoz anélkül, hogy megérintené. Tekintse meg ezt az animációt, hogy megtekintsen két robotot, amelyek távolságérzékelőket használnak a vezetés koordinálására.
- Az érzékelő által szolgáltatott értékek felhasználhatók a robot sebességének beállítására attól függően, hogy közel vagy távol van egy tárgytól vagy felülettől. Tekintse meg ezt az animációt, ha látni szeretné, hogy a robot a faltól való távolság alapján igazodjon.
A távolságérzékelő használata versenyrobotokon
- A robot a távolságérzékelőt használhatja egy viselkedéssorozat elindítására, amikor a megfelelő helyen van. Például a robot addig hajthat előre, amíg nem érzékeli, hogy 150 mm-re van a faltól, majd 90 fokkal elfordul, és kienged egy tárgyat a pontozási zónába.
- A távolságérzékelővel robotműveleteket indíthat el, például felvesz egy játékdarabot, ha egy tárgyat észlel a hatótávolságon belül.
- A robot a távolságérzékelőt használhatja arra, hogy egy tárgy vagy felület felé haladjon, amíg az egy adott távolságon belülre nem kerül, anélkül, hogy megérintené. Ezzel meg lehet győződni arról, hogy a robot nem dönti el a játékdarabokat.
- A robot a távolságérzékelő segítségével elhajthat egy tárgytól vagy felülettől, amíg az el nem ér egy meghatározott távolságot. Ezzel elkerülhető a többi robottal való ütközés a terepen.
A távolságérzékelő használata a VEXcode IQ-ban
A távolságérzékelő hozzáadása eszközként a VEXcode IQ-ban
A távolságérzékelő kódolásához a VEXcode IQ-ban először konfigurálnia kell a távolságérzékelőt. Tekintse meg ezt a cikket, ha többet szeretne megtudni az érzékelő konfigurálásáról a VEXcode IQ-ban.
Az érzékelő konfigurálása után a projektben használható parancsok jelennek meg az Eszköztárban.
A távolságérzékelő kódolása blokkokban
A <Object found> blokk egy logikai riporterblokk, amely egy feltételt igaz vagy hamisként jelent. A logikai blokkok, mint a <Object found> blokk, olyan blokkok belsejébe illeszkednek, amelyek hatszögletű (hatoldalas) bemenetei vannak más blokkokhoz.
A <Object found> logikai blokk „igaz”-t jelez, ha az érzékelő tárgyat észlel, és „hamis”, ha az érzékelő nem. Ha többet szeretne megtudni a logikai blokkokról, keresse fel a Súgó vagy a blokk alakzatok és jelentése cikket.
Ebben a példában a <Object found> s blokkot a [Várakozásig] mondattal együtt használjuk, hogy a robot előre haladjon, amíg a távolságérzékelő tárgyat észlel. Amikor az érzékelő tárgyat észlel, a robot leállítja a vezetést, ahogy az a fenti képen is látható.
A (Távolság tőle) blokk jelenti a legközelebbi tárgy távolságát a távolságérzékelőtől. 24 mm és 1000 mm, illetve 1 hüvelyk és 40 hüvelyk közötti tartományt jelez. A (Távolság ettől) blokk egy riporterblokk, amelyet kör alakú terekkel rendelkező blokkokban használnak.
Ebben a példában a (Távolság tőle) blokkot a [Nyomtatás] blokkal együtt használjuk, hogy az Agy képernyőn megjelenítse a távolságérzékelő és egy tárgy közötti távolságot. A (Távolság tőle) blokk egy <Less than> blokkon belül is látható, amely egy {Wait until} blokkon belül van. Ez arra készteti a robotot, hogy addig hajtson, amíg a távolságérzékelő egy 50 milliméternél kisebb távolságban lévő tárgyat észlel, majd leállítja a vezetést. Ez látható a fenti első videóban.
A távolságérzékelő kódolása Pythonban
Megjegyzés:Egy VEX IQ (1. generációs) távolságérzékelő Pythonban történő kódolásához azt egy VEX IQ (2. generációs) agyhoz kell csatlakoztatni. A VEX IQ (1. generációs) agy nem támogatja a Pythont.
távolság_7.objektum_észlelés()A distance.is_object_detected parancs „true”-t jelez, ha a rendszer egy objektumot észlel, és „false”-t, ha a rendszer nem észlel egy objektumot.
Megjegyzés:A parancsban megjelenő távolságérzékelő neve megegyezik a konfigurációban megadott névvel.
|
| Ebben a példában egyWhile ciklust használunk egy not feltétellel a distance.is_object_detected paranccsal, hogy a robot előre haladjon, amíg a távolságérzékelő egy tárgyat nem érzékel. Amikor az érzékelő egy tárgyat érzékel, a robot leáll, ahogy a fenti Python kód is mutatja. |
távolság_7.távolság(MM)A távolság.távolság parancs jelzi a legközelebbi tárgy távolságát a távolságérzékelőtől. 24 mm és 1000 mm, illetve 1 hüvelyk és 40 hüvelyk közötti tartományt jelez.
|
|
Ebben a példában egy While ciklust használunk egy not feltétellel a distance.is_object_detected paranccsal, hogy a robot előre haladjon, amíg a távolságérzékelő egy tárgyat nem érzékel. Amikor az érzékelő egy tárgyat észlel, a robot leállítja a vezetést. Ebben a példában a distance.distance parancsot egy brain.screen.print paranccsal együtt használjuk a Brain képernyőn a távolságérzékelő és egy tárgy közötti távolság megjelenítéséhez. A distance.distance parancs egy While cikluson belül is látható, not feltétellel. Ez azt eredményezi, hogy a robot addig halad, amíg a távolságérzékelő 50 milliméternél kisebb távolságra lévő tárgyat nem érzékel, majd leáll. Ez látható a fenti első videóban. |