Makro#
Johdanto#
VEX AIM Python -makrot ovat valmiiksi rakennettuja koodilohkoja, jotka voidaan vetää Python-projektiin. Jokainen makro on joukko Python-komentoja, jotka toimivat yhdessä saadakseen robotin suorittamaan laajemman toiminnan.
Nämä eivät ole yksittäisiä metodeja, joita kutsutaan koodista. Sen sijaan jokainen makro lisätään valmiina koodisekvenssinä, jota voidaan käyttää sellaisenaan tai muokata sen jälkeen, kun se on lisätty projektiin.
Tällä sivulla jokainen Python-koodilohko näyttää todellisen koodisekvenssin, joka lisätään, kun kyseistä makroa käytetään.
Alla on luettelo kaikista makroista:
Tunteet — Pakota robotti toimimaan ilmeikkäästi.
act happy— Saa robotin käyttäytymään iloisesti.act sad— Saa robotin toimimaan surullisesti.act silly— Saa robotin käyttäytymään hölmösti.act angry— Saa robotin käyttäytymään vihaisesti.act excited— Saa robotin toimimaan innostuneena.
AI Vision (urheilupallo) – Käänny kohti urheilupalloja tai kerää niitä.
turn right until sports ball— Kääntyy oikealle, kunnes urheilupallo havaitaan.turn left until sports ball— Kääntyy vasemmalle, kunnes urheilupallo havaitaan.get sports ball— Liikuttaa robottia noutamaan urheilupallon.
Tekoälynäkö (oranssi tynnyri) – Käänny kohti oransseja tynnyreitä tai kerää niitä.
turn right until orange barrel— Kääntyy oikealle, kunnes oranssi tynnyri havaitaan.turn left until orange barrel— Kääntyy vasemmalle, kunnes oranssi tynnyri havaitaan.get orange barrel— Liikuttaa robottia keräämään oranssin tynnyrin.
Tekoälynäkö (sininen tynnyri) – Käänny kohti sinisiä tynnyreitä tai kerää ne.
turn right until blue barrel— Kääntyy oikealle, kunnes sininen tynnyri havaitaan.turn left until blue barrel— Kääntyy vasemmalle, kunnes sininen tynnyri havaitaan.get blue barrel— Liikuttaa robottia noutamaan sinisen tynnyrin.
Tekoälynäkö (AIM-robotti) – Käänny tai liiku muita AIM-robotteja kohti.
turn right until AIM robot— Kääntyy oikealle, kunnes toinen AIM-robotti havaitaan.turn left until AIM robot— Kääntyy vasemmalle, kunnes toinen AIM-robotti havaitaan.move to AIM robot— Liikkuu kohti toista AIM-robottia.
AI Vision (AprilTag) — Käänny kohti AprilTagsia tai liiku sitä kohti.
turn right until AprilTag— Kääntyy oikealle, kunnes AprilTag havaitaan.turn left until AprilTag— Kääntyy vasemmalle, kunnes AprilTag havaitaan.move to AprilTag— Siirtyy kohti AprilTag-tunnistetta.
Tunteet#
act happy#
Tämä makro saa robotin käyttäytymään iloisesti näyttämällä iloisia naamoja, soittamalla iloista ääntä, vaihtamalla LEDejä ja liikkumalla edestakaisin. Käytä sitä, kun robotin halutaan reagoivan iloisesti tai positiivisesti.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# act happy
robot.screen.show_emoji(HAPPY)
wait(.5,SECONDS)
robot.sound.play(ACT_HAPPY)
wait(115, MSEC)
robot.screen.show_emoji(HAPPY, LOOK_RIGHT)
robot.led.on(ALL_LEDS, YELLOW)
robot.turn_for(RIGHT, 4, 100)
robot.led.on(ALL_LEDS, WHITE)
robot.screen.show_emoji(HAPPY, LOOK_LEFT)
robot.turn_for(RIGHT, -8, 100)
robot.led.on(ALL_LEDS, YELLOW)
robot.screen.show_emoji(HAPPY, LOOK_RIGHT)
robot.turn_for(RIGHT, 4, 100)
wait(100,MSEC)
for i in range(3):
robot.screen.show_emoji(QUIET)
robot.led.on(ALL_LEDS, WHITE)
robot.move_for(1,-90)
robot.screen.show_emoji(HAPPY)
robot.led.on(ALL_LEDS, YELLOW)
robot.move_for(1,90)
robot.stop_all_movement()
robot.led.off(ALL_LEDS)
wait(.5,SECONDS)
act sad#
Tämä makro saa robotin toimimaan surullisena näyttämällä surullisia ilmeitä, soittamalla surullista ääntä, himmentämällä LEDejä ja liikkumalla hitaasti eri suuntiin. Käytä sitä, kun robotin tulisi reagoida pettyneesti tai energiaa säästäen.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# act sad
robot.screen.show_emoji(SAD)
wait(.5,SECONDS)
robot.sound.play(ACT_SAD)
wait(115, MSEC)
robot.led.on(ALL_LEDS, Color(0, 0, 250))
robot.screen.show_emoji(SAD, LOOK_RIGHT)
robot.move_for(11, 135, 70)
robot.led.on(ALL_LEDS, Color(0, 0, 100))
robot.screen.show_emoji(SAD, LOOK_FORWARD)
robot.move_for(11, 315, 70)
robot.led.on(ALL_LEDS, Color(0, 0, 50))
robot.screen.show_emoji(SAD, LOOK_LEFT)
robot.move_for(11, 225, 70)
robot.led.on(ALL_LEDS, Color(0, 0, 10))
robot.screen.show_emoji(SAD, LOOK_FORWARD)
robot.move_for(11, 45, 70)
wait(.5,SECONDS)
robot.led.off(ALL_LEDS)
act silly#
Tämä makro saa robotin hölmöilemään pyörimällä, vaihtamalla kasvojaan ja vilkuttamalla eri LED-värejä. Käytä sitä, kun robotin on tehtävä leikkisä tai yllättävä reaktio.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# act silly
robot.screen.show_emoji(SILLY)
wait(.5,SECONDS)
robot.sound.play(ACT_SILLY)
wait(115,MSEC)
robot.turn_for(RIGHT, 360, 100, wait=False)
face_list = [SILLY, HAPPY, EXCITED, PROUD, THRILLED, LAUGHING]
colors = [BLUE, CYAN, GREEN, ORANGE, PURPLE, RED, WHITE, YELLOW]
while robot.is_turn_active():
robot.screen.show_emoji(SILLY)
robot.led.on(ALL_LEDS, random.choice(colors))
wait(110,MSEC)
robot.screen.show_emoji(random.choice(face_list))
wait(110,MSEC)
robot.screen.show_emoji(SILLY)
robot.led.off(ALL_LEDS)
wait(.5,SECONDS)
act angry#
Tämä makro saa robotin reagoimaan vihaisesti näyttämällä vihaisia naamoja, soittamalla vihaisen äänen, vaihtamalla LED-valot punaisiksi ja liikkumalla nopeasti. Käytä sitä, kun robotin tulisi reagoida turhautuneena tai varoittavana.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# act angry
robot.screen.show_emoji(ANGRY)
wait(.5,SECONDS)
robot.sound.play(ACT_ANGRY)
wait(115,MSEC)
robot.led.on(ALL_LEDS, RED)
robot.move_for(25, 0, 50)
wait(50,MSEC)
for i in range(5):
robot.screen.show_emoji(ANNOYED)
robot.move_for(5, 180, 50)
robot.screen.show_emoji(ANGRY)
wait(50,MSEC)
wait(.5,SECONDS)
robot.led.off(ALL_LEDS)
act excited#
Tämä makro saa robotin toimimaan innostuneena näyttämällä innostuneen ilmeen, soittamalla innostuneen äänen, liikkumalla nopeasti puolelta toiselle ja vilkuttamalla oransseja LED-valoja. Käytä sitä, kun robotin on tarkoitus juhlia tai reagoida suurella energialla.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# act excited
robot.screen.show_emoji(EXCITED)
wait(.5,SECONDS)
robot.sound.play(ACT_EXCITED)
wait(115, MSEC)
for angle in [3,-3,2,-2,2,-2,2,-2,1,-1]:
if angle > 0:
robot.screen.show_emoji(EXCITED, LOOK_RIGHT)
robot.led.on(LED4, ORANGE)
robot.led.on(LED5, ORANGE)
robot.led.on(LED6, ORANGE)
robot.led.off(LED1)
else:
robot.screen.show_emoji(EXCITED, LOOK_LEFT)
robot.led.on(LED1, ORANGE)
robot.led.on(LED2, ORANGE)
robot.led.on(LED3, ORANGE)
robot.led.off(LED6)
robot.turn_for(RIGHT, angle)
robot.led.off(ALL_LEDS)
robot.screen.show_emoji(EXCITED, LOOK_FORWARD)
wait(.5,SECONDS)
AI Vision (urheilupallo)#
turn right until sports ball#
Tämä makro kääntää robottia oikealle, kunnes tekoälynäköanturi havaitsee urheilupallon, ja kääntyy sitten havaittua kohdetta kohti. Käytä sitä, kun robotin on etsittävä urheilupalloa ennen kuin se liikkuu sitä kohti tai noutaa sen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn right until sports ball is detected
robot.turn(RIGHT)
while True:
vision_data = robot.vision.get_data(SPORTS_BALL)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
turn left until sports ball#
Tämä makro kääntää robottia vasemmalle, kunnes tekoälynäköanturi havaitsee urheilupallon, ja kääntyy sitten havaittua kohdetta kohti. Käytä sitä, kun robotin on etsittävä urheilupalloa ennen kuin se liikkuu sitä kohti tai noutaa sen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn left until sports ball is detected
robot.turn(LEFT)
while True:
vision_data = robot.vision.get_data(SPORTS_BALL)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
get sports ball#
Tämä makro liikuttaa robottia kohti havaittua urheilupalloa, kunnes robotti on noutanut sen. Käytä tätä sen jälkeen, kun robotti on nähnyt urheilupallon tai kun olet käyttänyt käännä-kunnes-urheilupalloon-makroa sellaisen löytämiseen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile laskea robotin liike- ja kääntymisnopeuksia käyttämällä set_move_velocity ja set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Get sports ball
while True:
vision_data = robot.vision.get_data(SPORTS_BALL)
if vision_data[0].exists:
if robot.has_sports_ball():
robot.stop_all_movement()
break
else:
robot.move_at(vision_data[0].bearing)
else:
robot.move_at(0)
wait(20, MSEC)
AI Vision (oranssi tynnyri)#
turn right until orange barrel#
Tämä makro kääntää robottia oikealle, kunnes tekoälynäköanturi havaitsee oranssin tynnyrin, ja kääntyy sitten havaittua kohdetta kohti. Käytä sitä, kun robotin on etsittävä oranssi tynnyri ennen kuin se liikkuu sitä kohti tai noutaa sen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn right until orange barrel is detected
robot.turn(RIGHT)
while True:
vision_data = robot.vision.get_data(ORANGE_BARREL)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
turn left until orange barrel#
Tämä makro kääntää robottia vasemmalle, kunnes tekoälynäköanturi havaitsee oranssin tynnyrin, ja kääntyy sitten havaittua kohdetta kohti. Käytä sitä, kun robotin on etsittävä oranssi tynnyri ennen kuin se liikkuu sitä kohti tai noutaa sen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn left until orange barrel is detected
robot.turn(LEFT)
while True:
vision_data = robot.vision.get_data(ORANGE_BARREL)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
get orange barrel#
Tämä makro liikuttaa robottia havaittua oranssia tynnyriä kohti, kunnes robotti on noutanut sen. Käytä tätä sen jälkeen, kun robotti on nähnyt oranssin tynnyrin tai kun olet käyttänyt käännä-oranssi-tynnyri -makroa sellaisen löytämiseen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile laskea robotin liike- ja kääntymisnopeuksia käyttämällä set_move_velocity ja set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Get orange barrel
while True:
vision_data = robot.vision.get_data(ORANGE_BARREL)
if vision_data[0].exists:
if robot.has_orange_barrel():
robot.stop_all_movement()
break
else:
robot.move_at(vision_data[0].bearing)
else:
robot.move_at(0)
wait(20, MSEC)
Tekoälyvisio (sininen tynnyri)#
turn right until blue barrel#
Tämä makro kääntää robottia oikealle, kunnes tekoälynäköanturi havaitsee sinisen tynnyrin, ja kääntyy sitten havaittua kohdetta kohti. Käytä sitä, kun robotin on etsittävä sinistä tynnyriä ennen kuin se liikkuu sitä kohti tai noutaa sen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn right until blue barrel is detected
robot.turn(RIGHT)
while True:
vision_data = robot.vision.get_data(BLUE_BARREL)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
turn left until blue barrel#
Tämä makro kääntää robottia vasemmalle, kunnes tekoälynäköanturi havaitsee sinisen tynnyrin, ja kääntyy sitten havaittua kohdetta kohti. Käytä sitä, kun robotin on etsittävä sinistä tynnyriä ennen kuin se liikkuu sitä kohti tai noutaa sen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn left until blue barrel is detected
robot.turn(LEFT)
while True:
vision_data = robot.vision.get_data(BLUE_BARREL)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
get blue barrel#
Tämä makro liikuttaa robottia kohti havaittua sinistä tynnyriä, kunnes robotti on noutanut sen. Käytä tätä sen jälkeen, kun robotti on nähnyt sinisen tynnyrin tai kun olet käyttänyt käännä-siniseen-tynnyriin-makroa sellaisen löytämiseen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile laskea robotin liike- ja kääntymisnopeuksia käyttämällä set_move_velocity ja set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Get blue barrel
while True:
vision_data = robot.vision.get_data(BLUE_BARREL)
if vision_data[0].exists:
if robot.has_blue_barrel():
robot.stop_all_movement()
break
else:
robot.move_at(vision_data[0].bearing)
else:
robot.move_at(0)
wait(20, MSEC)
Tekoälynäkö (AIM-robotti)#
turn right until AIM robot#
Tämä makro kääntää robottia oikealle, kunnes tekoälynäköanturi havaitsee toisen VEX AIM -koodausrobotin, ja kääntyy sitten sitä kohti. Käytä sitä, kun robotin on etsittävä toinen robotti ennen kuin se liikkuu sitä kohti.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn right until AIM robot is detected
robot.turn(RIGHT)
while True:
vision_data = robot.vision.get_data(AIM_ROBOT)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
turn left until AIM robot#
Tämä makro kääntää robottia vasemmalle, kunnes tekoälynäköanturi havaitsee toisen VEX AIM -koodausrobotin, ja kääntyy sitten sitä kohti. Käytä sitä, kun robotin on etsittävä toinen robotti ennen kuin se liikkuu sitä kohti.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn left until AIM robot is detected
robot.turn(LEFT)
while True:
vision_data = robot.vision.get_data(AIM_ROBOT)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
move to AIM robot#
Tämä makro liikuttaa robottia kohti toista VEX AIM -koodausrobottia, kunnes se on riittävän lähellä pysähtyäkseen. Käytä tätä sen jälkeen, kun robotti on nähnyt toisen robotin tai kun olet käyttänyt käänny-kunnes-AIM-robotti -makroa sellaisen löytämiseen.
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile laskea robotin liike- ja kääntymisnopeuksia käyttämällä set_move_velocity ja set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Move to AIM robot
while True:
vision_data = robot.vision.get_data(AIM_ROBOT)
if vision_data[0].exists:
if vision_data[0].width >= 140:
robot.stop_all_movement()
break
else:
robot.move_at(vision_data[0].bearing)
else:
robot.move_at(0)
wait(20, MSEC)
Tekoälyvisio (AprilTag)#
turn right until AprilTag#
Tämä makro kääntää robottia oikealle, kunnes tekoälynäköanturi havaitsee AprilTag-tunnuksen 0, ja sitten se kääntyy havaittua AprilTagia kohti. Käytä sitä, kun robotin on etsittävä AprilTagia ennen kuin se liikkuu sitä kohti. Voit vaihtaa sitä AprilTagia, johon asti robotti kääntyy, korvaamalla luvun 0 kohdassa TAG0 millä tahansa numerolla 0 - 37 (AprilTageja 5–37 voidaan käyttää tulostettujen AprilTagien kanssa AIM Printables -sivustolta.)
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn right until AprilTag ID 0 is detected
robot.turn(RIGHT)
while True:
vision_data = robot.vision.get_data(TAG0)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
turn left until AprilTag#
Tämä makro kääntää robottia vasemmalle, kunnes tekoälynäköanturi havaitsee AprilTag-tunnuksen 0, ja sitten se kääntyy havaittua AprilTagia kohti. Käytä sitä, kun robotin on etsittävä AprilTagia ennen kuin se liikkuu sitä kohti. Voit vaihtaa sitä AprilTagia, johon asti robotti kääntyy, korvaamalla luvun 0 kohdassa TAG0 millä tahansa numerolla 0 - 37 (AprilTageja 5–37 voidaan käyttää tulostettujen AprilTagien kanssa AIM Printables -sivustolta.)
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile robotin kääntymisnopeuden laskemista toiminnolla set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Turn left until AprilTag ID 0 is detected
robot.turn(LEFT)
while True:
vision_data = robot.vision.get_data(TAG0)
if vision_data[0].exists:
# Turn to the object by adding your current heading and the vision bearing offset
robot.turn_to(robot.inertial.get_heading() + vision_data[0].bearing)
break
wait(20, MSEC)
move to AprilTag#
Tämä makro liikuttaa robottia kohti AprilTag ID:tä 0, kunnes se on riittävän lähellä pysähtyäkseen. Käytä tätä sen jälkeen, kun robotti on nähnyt AprilTag-tunnisteen tai kun olet käyttänyt käänny-kunnes-AprilTag-makroa sellaisen löytämiseen. Voit vaihtaa AprilTag-tunnistetta, johon robotti siirtyy, korvaamalla 0 tunnisteessa TAG0 millä tahansa luvulla 0 - 37 (AprilTag-tunnisteita 5–37 voidaan käyttää tulostettujen AprilTag-tunnisteiden kanssa AIM Printables -sivustolta.)
Huomautus: Jos robotilla on vaikeuksia havaita esineitä, kokeile laskea robotin liike- ja kääntymisnopeuksia käyttämällä set_move_velocity ja set_turn_velocity.
Alla oleva koodi näyttää Python-sekvenssin, joka lisätään projektiisi, kun tämä makro vedetään työkalupakista. Voit käyttää sekvenssiä sellaisenaan tai muokata sitä lisäämisen jälkeen.
# Move to AprilTag ID 0
while True:
vision_data = robot.vision.get_data(TAG0)
if vision_data[0].exists:
if vision_data[0].width >= 60:
robot.stop_all_movement()
break
else:
robot.move_at(vision_data[0].bearing)
else:
robot.move_at(0)
wait(20, MSEC)