Silmäsensorin käyttö VEXcode VR:ssä Pythonin kanssa

VEX VR Robotissa on useita antureita, mukaan lukien kaksi silmäsensoria.


Silmäsensorit VR-robotissa

edessä alaspäin silmä

VR Robot ssä on kaksi silmäanturia, joista toinen osoittaa eteenpäin ja toinen alaspäin. Anturit voivat havaita, onko paikalla esinettä sekä väriä (punainen, vihreä, sininen, ei mitään).

Eye_sensor_dashboard.png

Silmäsensorin arvot voidaan näyttää VEXcode VR:n Dashboardissa. Saat lisätietoja Dashboardista katsomalla tätä artikkelia.

Screen_Shot_2022-04-20_at_1.41.35_PM.png

Silmäsensorin arvot voidaan näyttää monitorikonsolissa VEXcode VR:ssä. Saat lisätietoja Monitor Consolesta tutustumalla tähän artikkeliin.


Silmäsensorien kanssa käytetyt komennot

Silmäanturi lähellä kohdetta komento

Kuvakaappaus 26.07.2023 klo 11.08.46 AM.png

 

Silmäsensorikohteen lähellä -komento ilmoittaa, onko silmäanturi tarpeeksi lähellä kohdetta havaitakseen värin (punainen, vihreä, sininen, ei mitään). Front Eye Sensorilla ja Down Eye Sensorilla on vastaavat lähellä kohdetta komennot.

near_object_monitor_console.png

Eye sensornear object -komento palauttaa Boolen, joka raportoi True , kun silmäanturi on lähellä kohdetta, jolla on havaittavissa olevia värejä, ja raportoi False , kun se ei ole tarpeeksi lähellä esine, jolla on havaittavissa olevia värejä.

Silmäsensorin väri komento

Kuvakaappaus 26.7.2023 klo 11.09.02 AM.png

Silmäsensorin väri -komento ilmoittaa, havaitseeko silmäsensori tietyn värin.

color_list.png

Väri, jota silmäsensori etsii, on asetettu komennon parametriksi. Molemmat silmäsensorit voivat havaita punaisen, vihreän, sinisen tai ei mitään.

sensor_color_monitor_console.png

Silmäsensorin väri -komento palauttaa Boolen, joka raportoi True , kun silmäanturi havaitsee valitun värin, ja raportoi False , kun se ei tunnista parametriksi asetettua väriä.


Silmäsensorin yleiset käyttötavat

drive_to_blue_disk.png

VR-robotin silmäantureita voidaan käyttää monin tavoin. Yksi huomioitava asia Down Eye Sensorissa on, että se on viritetty niin, ettei se havaitse leikkikentän lattiaa esineenä. Muut kohteet, kuten levyt, rekisteröityvät objektiksi.

Silmäsensorit voivat havaita anturin lähellä olevan kohteen värin, kuten värilliset levyt Disk Mover Playgroundissa tai punaiset reunat Castle Crasher Playgroundin ympärillä. Tästä on hyötyä, jos haluat VR-robotin lajittelevan erivärisiä kohteita, ajavan tiettyyn värilliseen kohteeseen tai havaitsevan esineiden värin niiden ohittaessaan anturin.

def main():
, mutta ei down_eye.detect(BLUE):
drivetrain.drive(FORWARD)
odota(5, MSEC)
drivetrain.stop()
magnet.energize(BOOST)

Jos haluat käyttää yllä olevaa esimerkkiä, kopioi tämä koodi VEXcode VR:ään ja suorita projekti Disk Mover Playgroundissa.

front_eye_near_maze_wall.png

VR-robotti voi käyttää silmäantureita käynnistääkseen käyttäytymissarjan, kun se on oikeassa paikassa. Esimerkiksi VR-robotti voi ajaa eteenpäin, kunnes se havaitsee olevansa lähellä kohdetta, kuten seinää, ja kääntyä sitten 90 astetta tai ajaa taaksepäin, jotta se ei törmää esineeseen, kuten linnaan, levyyn tai seinään.

def main():
, mutta ei front_eye.near_object():
drivetrain.drive(FORWARD)
odota(5, MSEC)
drivetrain.stop()

Jos haluat käyttää yllä olevaa esimerkkiä, kopioi tämä koodi VEXcode VR:ään ja suorita projekti Wall Maze Playgroundissa.

stop_driving_at_red_border.png

VR-robotti voi käyttää silmäantureita ajaakseen kohdetta tai pintaa, kunnes se on tietyn etäisyyden sisällä, koskematta siihen. Tällä voidaan varmistaa, ettei VR-robotti putoa leikkipaikalta tai törmää seiniin.

def main():
drivetrain.drive_for(FORWARD, 300, MM)
drivetrain.turn_for(LEFT, 90, DEGREES)
mutta ei down_eye.detect(PUNAINEN):
drivetrain.drive(FORWARD)
odota(5, MSEC) )
drivetrain.stop()

Jos haluat käyttää yllä olevaa esimerkkiä, kopioi tämä koodi VEXcode VR:ään ja suorita projekti Castle Crasher Playgroundissa.


Silmäsensorin esimerkkiprojekti

driving_to_green_disk.png

Seuraavassa esimerkissä VR-robotti ajaa eteenpäin, kunnes etusilmätunnistin havaitsee vihreän kohteen, minkä jälkeen se pysähtyy ja odottaa ennen kuin peruuttaa. Huomaa, että kojelaudassa Front Eye Sensor -arvot ilmoittavat True , että esine havaittiin, ja kyseisen objektin (levyn) väri on vihreä.

def main():
drivetrain.drive(FORWARD)
while True:
if front_eye.detect(GREEN):
drivetrain.stop()
wait(2, SECONDS)
drivetrain.drive_for(REVERSE, 200, MM)
odota (5, MSEC)

Jos haluat käyttää yllä olevaa esimerkkiä, kopioi tämä koodi VEXcode VR:ään ja suorita projekti Disk Maze Playgroundissa.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: